<?xml version="1.0"?>
<doc>
    <assembly>
        <name>Roslyn.Services</name>
    </assembly>
    <members>
        <member name="T:Roslyn.Utilities.ConsList`1">
            <summary>
            a simple Lisp-like immutable list.  Good to use when lists are always accessed from the head.
            </summary>
        </member>
        <member name="M:Roslyn.Utilities.Contract.Requires(System.Boolean,System.String)">
             <summary>
             Equivalent to Debug.Assert.  
            
             DevDiv 867813 covers removing this completely at a future date
             </summary>
        </member>
        <member name="M:Roslyn.Utilities.Contract.Assert(System.Boolean,System.String)">
             <summary>
             Equivalent to Debug.Assert.  
            
             DevDiv 867813 covers removing this completely at a future date
             </summary>
        </member>
        <member name="M:Roslyn.Utilities.Contract.Assume(System.Boolean,System.String)">
             <summary>
             Equivalent to Debug.Assert.  
            
             DevDiv 867813 covers removing this completely at a future date
             </summary>
        </member>
        <member name="M:Roslyn.Utilities.Contract.ThrowIfNull``1(``0,System.String)">
            <summary>
            Throws a non-accessible exception if the provided value is null.  This method executes in
            all builds
            </summary>
        </member>
        <member name="M:Roslyn.Utilities.Contract.ThrowIfFalse(System.Boolean,System.String)">
            <summary>
            Throws a non-accessible exception if the provided value is false.  This method executes
            in all builds
            </summary>
        </member>
        <member name="M:Roslyn.Utilities.Contract.ThrowIfTrue(System.Boolean,System.String)">
            <summary>
            Throws a non-accessible exception if the provided value is true. This method executes in
            all builds.
            </summary>
        </member>
        <member name="M:Roslyn.Utilities.EnumUtilities.ConvertEnumUnderlyingTypeToUInt64(System.Object,Roslyn.Compilers.SpecialType)">
            <summary>
            Convert a boxed primitive (generally of the backing type of an enum) into a ulong.
            </summary>
            <remarks>
            </remarks>
        </member>
        <member name="M:Roslyn.Utilities.FileUtilities.RemoveTrailingSpacesAndDots(System.String)">
            <summary>
            Trims all '.' and whitespaces from the end of the path
            </summary>
        </member>
        <member name="M:Roslyn.Utilities.FileUtilities.GetExtension(System.String)">
            <summary>
            Returns an extension of the specified path string.
            </summary>
            <remarks>
            The same functionality as <see cref="M:System.IO.Path.GetExtension(System.String)"/> but doesn't throw an exception
            if there are invalid characters in the path.
            </remarks>
        </member>
        <member name="M:Roslyn.Utilities.FileUtilities.RemoveExtension(System.String)">
            <summary>
            Removes extension from path.
            </summary>
        </member>
        <member name="M:Roslyn.Utilities.FileUtilities.IndexOfFileName(System.String)">
            <summary>
            Returns the position in given path where the file name starts.
            </summary>
            <returns>-1 if path is null.</returns>
        </member>
        <member name="M:Roslyn.Utilities.FileUtilities.GetFileName(System.String)">
            <summary>
            Get file name from path.
            </summary>
            <remarks>Unlike <see cref="M:System.IO.Path.GetFileName(System.String)"/> doesn't check for invalid path characters.</remarks>
        </member>
        <member name="M:Roslyn.Utilities.FileUtilities.GetDirectoryName(System.String)">
            <summary>
            Get directory name from path.
            </summary>
            <remarks>
            Unlike <see cref="M:System.IO.Path.GetDirectoryName(System.String)"/> it
                doesn't check for invalid path characters, 
                doesn't strip any trailing directory separators (TODO: tomat),
                doesn't recognize UNC structure \\computer-name\share\directory-name\file-name (TODO: tomat).
            </remarks>
            <returns>Prefix of path that represents a directory. </returns>
        </member>
        <member name="M:Roslyn.Utilities.FileUtilities.IsDriveRootedAbsolutePath(System.String)">
            <summary>
            Returns true if given path is absolute and starts with a drive specification ("C:\").
            </summary>
        </member>
        <member name="M:Roslyn.Utilities.FileUtilities.GetPathRoot(System.String)">
            <summary>
            Get a prefix of given path which is the root of the path.
            </summary>
            <returns>
            Root of an absolute path or null if the path isn't absolute or has invalid format (e.g. "\\").
            </returns>
        </member>
        <member name="M:Roslyn.Utilities.FileUtilities.GetUncPathRootLength(System.String)">
            <summary>
            Calculates the length of root of an UNC path.
            </summary>
            <remarks>
            "\\server\share" is root of UNC path "\\server\share\dir1\dir2\file".
            </remarks>
        </member>
        <member name="M:Roslyn.Utilities.FileUtilities.ResolveRelativePath(System.String,System.String,System.String,System.Collections.Generic.IEnumerable{System.String},System.Func{System.String,System.Boolean})">
            <summary>
            Resolves relative path and returns absolute path.
            The method depends only on values of its parameters and their implementation (for fileExists).
            It doesn't itself depend on the state of the current process (namely on the current drive directories) or 
            the state of file system.
            </summary>
            <param name="path">
            Path to resolve.
            </param>
            <param name="basePath">
            Base file path to resolve CWD-relative paths against. Null if not available.
            </param>
            <param name="baseDirectory">
            Base directory to resolve CWD-relative paths against if <paramref name="basePath"/> isn't specified. 
            Must be absolute path.
            Null if not available.
            </param>
            <param name="searchPaths">
            Sequence of paths used to search for unqualified relative paths.
            </param>
            <param name="fileExists">
            Method that tests existence of a file.
            </param>
            <returns>
            The resolved path or null if the path can't be resolved.
            </returns>
        </member>
        <member name="M:Roslyn.Utilities.FileUtilities.NormalizeAbsolutePath(System.String)">
            <summary>
            Normalizes an absolute path.
            </summary>
            <param name="path">Path to normalize.</param>
            <exception cref="T:System.ArgumentException"/>
            <exception cref="T:System.Security.SecurityException"/>
            <exception cref="T:System.ArgumentNullException"/>
            <exception cref="T:System.NotSupportedException"/>
            <exception cref="T:System.IO.PathTooLongException"/>
            <returns>Normalized path.</returns>
        </member>
        <member name="M:Roslyn.Utilities.FileUtilities.DeleteFileOnClose(System.String)">
            <summary>
            Marks given file for automatic deletion when all its handles are closed.
            </summary>
        </member>
        <member name="M:Roslyn.Utilities.Hash.Combine(System.Int32,System.Int32)">
            <summary>
            This is how VB Anonymous Types combine hash values for fields.
            </summary>
            <param name="currentKey"></param>
            <param name="newKey"></param>
            <returns></returns>
        </member>
        <member name="M:Roslyn.Utilities.Hash.Combine``1(``0,System.Int32)">
            <summary>
            This is how VB Anonymous Types combine hash values for fields.
            </summary>
            <param name="newKeyPart"></param>
            <param name="currentKey"></param>
            <returns></returns>
        </member>
        <member name="T:Roslyn.Utilities.ImmutableList`1.ElementList">
            <summary>
            This is a simple list of elements
            </summary>
        </member>
        <member name="T:Roslyn.Utilities.ImmutableList`1.CompoundList">
            <summary>
            This is a compound list of lists
            </summary>
        </member>
        <member name="F:Roslyn.Utilities.PathKind.Empty">
            <summary>
            Null or empty.
            </summary>
        </member>
        <member name="F:Roslyn.Utilities.PathKind.Relative">
            <summary>
            "file"
            </summary>
        </member>
        <member name="F:Roslyn.Utilities.PathKind.RelativeToCurrentDirectory">
            <summary>
            ".\file"
            </summary>
        </member>
        <member name="F:Roslyn.Utilities.PathKind.RelativeToCurrentParent">
            <summary>
            "..\file"
            </summary>
        </member>
        <member name="F:Roslyn.Utilities.PathKind.RelativeToCurrentRoot">
            <summary>
            "\dir\file"
            </summary>
        </member>
        <member name="F:Roslyn.Utilities.PathKind.RelativeToDriveDirectory">
            <summary>
            "C:dir\file"
            </summary>
        </member>
        <member name="F:Roslyn.Utilities.PathKind.Absolute">
            <summary>
            "C:\file" or "\\mymachine" (UNC).
            </summary>
        </member>
        <member name="T:Roslyn.Utilities.ReferenceEqualityComparer">
            <summary>
            Compares objects based upon their reference identity.
            </summary>
        </member>
        <member name="M:Roslyn.Utilities.StringExtensions.NeedsLocalization(System.String)">
            <summary>
            Used to indicate places where we are hard-coding strings that will later need to be
            localized.  This way, we can use a "Find All References" to find and fix these.
            </summary>
        </member>
        <member name="M:Roslyn.Utilities.StringExtensions.IsValidClrNamespaceName(System.String)">
            <summary>
            Checks if the given name is a sequence of valid CLR names separated by a dot.
            </summary>
        </member>
        <member name="T:Roslyn.Utilities.SyntaxPath">
            <summary>
            Stores the "path" from the root of a tree to a node, allowing the node to be recovered in a
            later snapshot of the tree, under certain circumstances.
            
            The implementation stores the child indices to represent the path, so any edit which affects
            the child indices could render this object unable to recover its node.  NOTE: One thing C#
            IDE has done in the past to do a better job of this is to store the fully qualified name of
            the member to at least be able to descend into the same member.  We could apply the same sort
            of logic here.
            </summary>
        </member>
        <member name="M:Roslyn.Utilities.SyntaxPath.TryResolve(Roslyn.Compilers.Common.CommonSyntaxNode,Roslyn.Compilers.Common.CommonSyntaxNodeOrToken@)">
            <summary>
            Attempts to recover the node at this path in the provided tree.  If the node is found
            then 'true' is returned, otherwise the result is 'false' and 'node' will be null.
            </summary>
        </member>
        <member name="T:Roslyn.Services.ILanguageService">
            <summary>
            Empty interface just to mark language services.
            </summary>
        </member>
        <member name="T:Roslyn.Services.ICodeAction">
             <summary>
             Represents a single action that can be applied to source code. Code actions can hold onto
             whatever is necessary to produce an edit when GetEdit is called.
            
             Note: the code actions infrastructure doesn't generally concern itself with how code actions
             will appear to the user. It is up to the final host to make that determination. However,
             hosts can use the specific ICodeAction interface to determine how to present things in the
             most suitable manner.
             </summary>
        </member>
        <member name="M:Roslyn.Services.ICodeAction.GetEdit(System.Threading.CancellationToken)">
            <summary>
            Get the edit for this code action so that it can be applied or previewed. This method
            may be called on any thread and may be called multiple times. It is highly recommended
            that method not change any state as that could lead to race conditions.
            </summary>
        </member>
        <member name="M:Roslyn.Services.DocumentExtensions.GetCompletionItemGroups(Roslyn.Services.IDocument,System.Int32,Roslyn.Services.CompletionTriggerInfo,System.Collections.Generic.IEnumerable{Roslyn.Services.ICompletionProvider},System.Threading.CancellationToken)">
            <summary>
            Returns the CompletionItemGroups for the specified position in the document.
            </summary>
        </member>
        <member name="M:Roslyn.Services.DocumentExtensions.IsCompletionTriggerCharacter(Roslyn.Services.IDocument,System.Int32,System.Collections.Generic.IEnumerable{Roslyn.Services.ICompletionProvider},System.Threading.CancellationToken)">
            <summary>
            Returns true if the character at the specific position in the text snapshot should
            trigger completion. Implementers of this will be called on the main UI thread and should
            only do minimal textual checks to determine if they should be presented.
            </summary>
        </member>
        <member name="M:Roslyn.Services.DocumentExtensions.Cleanup(Roslyn.Services.IDocument,System.Collections.Generic.IEnumerable{Roslyn.Services.CodeCleanup.ICodeCleanupProvider},System.Threading.CancellationToken)">
            <summary>
            Clean up the whole document.
            Optionally you can provide your own options and code cleaners. otherwise, default will be used.
            </summary>
        </member>
        <member name="M:Roslyn.Services.DocumentExtensions.Cleanup(Roslyn.Services.IDocument,Roslyn.Compilers.SyntaxAnnotation,System.Collections.Generic.IEnumerable{Roslyn.Services.CodeCleanup.ICodeCleanupProvider},System.Threading.CancellationToken)">
            <summary>
            Clean up the document marked with the provided annotation.
            Optionally you can provide your own options and code cleaners. otherwise, default will be used.
            </summary>
        </member>
        <member name="M:Roslyn.Services.DocumentExtensions.Cleanup(Roslyn.Services.IDocument,Roslyn.Compilers.TextSpan,System.Collections.Generic.IEnumerable{Roslyn.Services.CodeCleanup.ICodeCleanupProvider},System.Threading.CancellationToken)">
            <summary>
            Clean up the provided span in the document
            Optionally you can provide your own options and code cleaners. otherwise, default will be used.
            </summary>
        </member>
        <member name="M:Roslyn.Services.DocumentExtensions.Cleanup(Roslyn.Services.IDocument,System.Collections.Generic.IEnumerable{Roslyn.Compilers.TextSpan},System.Collections.Generic.IEnumerable{Roslyn.Services.CodeCleanup.ICodeCleanupProvider},System.Threading.CancellationToken)">
            <summary>
            Clean up the provided spans in the document
            Optionally you can provide your own options and code cleaners. otherwise, default will be used.
            </summary>
        </member>
        <member name="M:Roslyn.Services.DocumentExtensions.Organize(Roslyn.Services.IDocument,System.Collections.Generic.IEnumerable{Roslyn.Services.Organizing.ISyntaxOrganizer},System.Threading.CancellationToken)">
            <summary>
            Organize the whole document.
            
            Optionally you can provide your own organizers. otherwise, default will be used.
            </summary>
        </member>
        <member name="M:Roslyn.Services.DocumentExtensions.UpdateSourceCodeKind(Roslyn.Services.IDocument,Roslyn.Compilers.SourceCodeKind)">
            <summary>
            Creates a new instance of this document updated to have the source code kind specified.
            </summary>
        </member>
        <member name="M:Roslyn.Services.DocumentExtensions.UpdateText(Roslyn.Services.IDocument,Roslyn.Compilers.IText)">
            <summary>
            Creates a new instance of this document updated to have the text specified.
            </summary>
        </member>
        <member name="M:Roslyn.Services.DocumentExtensions.UpdateSyntaxRoot(Roslyn.Services.IDocument,Roslyn.Compilers.Common.CommonSyntaxNode)">
            <summary>
            Creates a new instance of this document updated to have a syntax tree rooted by the specified syntax node.
            </summary>
        </member>
        <member name="M:Roslyn.Services.DocumentExtensions.GetTextChanges(Roslyn.Services.IDocument,Roslyn.Services.IDocument,System.Threading.CancellationToken)">
            <summary>
            Get the text changes between this document and a prior version of the same document.
            The changes, when applied to the text of the old document, will produce the text of the current document.
            </summary>
        </member>
        <member name="M:Roslyn.Services.DocumentExtensions.CaseCorrect(Roslyn.Services.IDocument,System.Threading.CancellationToken)">
            <summary>
            Case corrects all names found in the provided document.
            </summary>
        </member>
        <member name="M:Roslyn.Services.DocumentExtensions.CaseCorrect(Roslyn.Services.IDocument,Roslyn.Compilers.SyntaxAnnotation,System.Threading.CancellationToken)">
            <summary>
            Case corrects all names found in the spans of any nodes annotated with the provided
            annotation.
            </summary>
        </member>
        <member name="M:Roslyn.Services.DocumentExtensions.CaseCorrect(Roslyn.Services.IDocument,Roslyn.Compilers.TextSpan,System.Threading.CancellationToken)">
            <summary>
            Case corrects all names found in the span.
            </summary>
        </member>
        <member name="M:Roslyn.Services.DocumentExtensions.CaseCorrect(Roslyn.Services.IDocument,System.Collections.Generic.IEnumerable{Roslyn.Compilers.TextSpan},System.Threading.CancellationToken)">
            <summary>
            Case corrects all names found in the provided spans.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Classification.ISyntaxClassifier.ClassifyNode(Roslyn.Services.IDocument,Roslyn.Compilers.Common.CommonSyntaxNode,System.Threading.CancellationToken)">
            <summary>
            Note: This method will be called for all nodes that match the types specified by the 
            ExportSyntaxNodeClassifierAttribute.  implementations should return null (instead of an
            empty enumerable) if they have no classifications for the provided node.  This helps save
            memory while classifying large files.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Classification.ISyntaxClassifier.ClassifyToken(Roslyn.Services.IDocument,Roslyn.Compilers.Common.CommonSyntaxToken,System.Threading.CancellationToken)">
            <summary>
            Note: This method will be called for all nodes that match the types specified by the 
            ExportSyntaxTokenClassifierAttribute.  implementations should return null (instead of an
            empty enumerable) if they have no classifications for the provided node.  This helps save
            memory while classifying large files.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.IWorkspaceService">
            <summary>
            Empty interface just to mark workspace services.
            </summary>
        </member>
        <member name="T:Roslyn.Services.SymbolCallerInfo">
            <summary>
            Contains information about a call from one symbol to another.  The symbol making the call is
            stored in CallingSymbol and the symbol that the call was made to is stored in CalledSymbol.
            Whether or not the call is direct or indirect is also stored.  A direct call is a call that
            does not go through any other symbols in the inheritance hierarchy of CalledSymbol, while an
            indirect call does go through the inheritance hierarchy.  For example, calls through a base
            member that this symbol overrides, or through an interface member that this symbol
            implements will be considered 'indirect'. 
            </summary>
        </member>
        <member name="P:Roslyn.Services.SymbolCallerInfo.CallingSymbol">
            <summary>
            The symbol that is calling the symbol being called.
            </summary>
        </member>
        <member name="P:Roslyn.Services.SymbolCallerInfo.Locations">
            <summary>
            The locations inside the calling symbol where the called symbol is referenced.
            </summary>
        </member>
        <member name="P:Roslyn.Services.SymbolCallerInfo.CalledSymbol">
            <summary>
            The symbol being called.
            </summary>
        </member>
        <member name="P:Roslyn.Services.SymbolCallerInfo.IsDirect">
            <summary>
            True if the CallingSymbol is directly calling CalledSymbol.  False if it is calling a
            symbol in the inheritance hierarchy of the CalledSymbol.  For example, if the called
            symbol is a class method, then an indirect call might be through an interface mthod that
            the class method implements.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SymbolExtensions.FindCallers(Roslyn.Compilers.Common.ISymbol,Roslyn.Services.ISolution,System.Threading.CancellationToken)">
            <summary>
            Finds all the callers of a specified symbol.  Each caller is returned as a seperate item
            in the 
            </summary>
        </member>
        <member name="M:Roslyn.Services.SymbolExtensions.Rename(Roslyn.Compilers.Common.ISymbol,Roslyn.Services.ISolution,System.String,System.Threading.CancellationToken)">
            <summary>
            Renames a symbol
            </summary>
            <param name="symbol">The symbol to rename.</param>
            <param name="solution">The solution in which the symbol should be renamed.</param>
            <param name="newName">The new name of the symbol.</param>
            <param name="cancellationToken">An optional cancellation token.</param>
            <returns>A new solution in which the symbol has been renamed.</returns>
        </member>
        <member name="M:Roslyn.Services.SymbolExtensions.AddEventTo``1(Roslyn.Compilers.Common.IEventSymbol,``0,Roslyn.Services.CodeGeneration.CodeGenerationOptions)">
            <summary>
            Adds a field with the provided signature into destination.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SymbolExtensions.AddFieldTo``1(Roslyn.Compilers.Common.IFieldSymbol,``0,Roslyn.Services.CodeGeneration.CodeGenerationOptions)">
            <summary>
            Adds a field with the provided signature into destination.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SymbolExtensions.AddMethodTo``1(Roslyn.Compilers.Common.IMethodSymbol,``0,Roslyn.Services.CodeGeneration.CodeGenerationOptions)">
            <summary>
            Adds a method with the provided signature into destination.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SymbolExtensions.AddPropertyTo``1(Roslyn.Compilers.Common.IPropertySymbol,``0,Roslyn.Services.CodeGeneration.CodeGenerationOptions)">
            <summary>
            Adds a property with the provided signature into destination. 
            </summary>
        </member>
        <member name="M:Roslyn.Services.SymbolExtensions.AddNamedTypeTo``1(Roslyn.Compilers.Common.INamedTypeSymbol,``0,Roslyn.Services.CodeGeneration.CodeGenerationOptions)">
            <summary>
            Adds a named type with the provided signature into destination. 
            </summary>
        </member>
        <member name="M:Roslyn.Services.SymbolExtensions.AddMembersTo``1(System.Collections.Generic.IEnumerable{Roslyn.Compilers.Common.ISymbol},``0,Roslyn.Services.CodeGeneration.CodeGenerationOptions)">
            <summary>
            Adds a method with the provided signature into destination.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SymbolExtensions.AddParametersTo``1(System.Collections.Generic.IEnumerable{Roslyn.Compilers.Common.IParameterSymbol},``0,Roslyn.Services.CodeGeneration.CodeGenerationOptions)">
            <summary>
            Adds the provided parameters to destinationMember.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SymbolExtensions.AddStatementsTo``1(System.Collections.Generic.IEnumerable{Roslyn.Compilers.Common.CommonSyntaxNode},``0,System.Collections.Generic.IEnumerable{Roslyn.Compilers.Common.CommonSyntaxToken},Roslyn.Services.CodeGeneration.CodeGenerationOptions)">
            <summary>
            Adds the provided statements to destinationMember.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SymbolExtensions.AddEventTo(Roslyn.Compilers.Common.IEventSymbol,Roslyn.Compilers.Common.INamedTypeSymbol,Roslyn.Services.ISolution,Roslyn.Services.CodeGeneration.CodeGenerationOptions,System.Threading.CancellationToken)">
            <summary>
            Adds a field with the provided signature into destination.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SymbolExtensions.AddFieldTo(Roslyn.Compilers.Common.IFieldSymbol,Roslyn.Compilers.Common.INamedTypeSymbol,Roslyn.Services.ISolution,Roslyn.Services.CodeGeneration.CodeGenerationOptions,System.Threading.CancellationToken)">
            <summary>
            Adds a field with the provided signature into destination.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SymbolExtensions.AddMethodTo(Roslyn.Compilers.Common.IMethodSymbol,Roslyn.Compilers.Common.INamedTypeSymbol,Roslyn.Services.ISolution,Roslyn.Services.CodeGeneration.CodeGenerationOptions,System.Threading.CancellationToken)">
            <summary>
            Adds a method with the provided signature into destination.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SymbolExtensions.AddPropertyTo(Roslyn.Compilers.Common.IPropertySymbol,Roslyn.Compilers.Common.INamedTypeSymbol,Roslyn.Services.ISolution,Roslyn.Services.CodeGeneration.CodeGenerationOptions,System.Threading.CancellationToken)">
            <summary>
            Adds a property with the provided signature into destination.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SymbolExtensions.AddNamedTypeTo(Roslyn.Compilers.Common.INamedTypeSymbol,Roslyn.Compilers.Common.INamedTypeSymbol,Roslyn.Services.ISolution,Roslyn.Services.CodeGeneration.CodeGenerationOptions,System.Threading.CancellationToken)">
            <summary>
            Adds a property with the provided signature into destination.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SymbolExtensions.AddNamedTypeTo(Roslyn.Compilers.Common.INamedTypeSymbol,Roslyn.Compilers.Common.INamespaceSymbol,Roslyn.Services.ISolution,Roslyn.Services.CodeGeneration.CodeGenerationOptions,System.Threading.CancellationToken)">
            <summary>
            Adds a property with the provided signature into destination.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SymbolExtensions.AddNamespaceTo(Roslyn.Compilers.Common.INamespaceSymbol,Roslyn.Compilers.Common.INamespaceSymbol,Roslyn.Services.ISolution,Roslyn.Services.CodeGeneration.CodeGenerationOptions,System.Threading.CancellationToken)">
            <summary>
            Adds a property with the provided signature into destination.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SymbolExtensions.AddNamespaceOrTypeTo(Roslyn.Compilers.Common.INamespaceOrTypeSymbol,Roslyn.Compilers.Common.INamespaceSymbol,Roslyn.Services.ISolution,Roslyn.Services.CodeGeneration.CodeGenerationOptions,System.Threading.CancellationToken)">
            <summary>
            Adds a property with the provided signature into destination.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SymbolExtensions.AddMembersTo(System.Collections.Generic.IEnumerable{Roslyn.Compilers.Common.ISymbol},Roslyn.Compilers.Common.INamedTypeSymbol,Roslyn.Services.ISolution,Roslyn.Services.CodeGeneration.CodeGenerationOptions,System.Threading.CancellationToken)">
            <summary>
            Adds all the provided members into destination.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SymbolExtensions.CanAddTo(Roslyn.Compilers.Common.ISymbol,Roslyn.Services.ISolution,System.Threading.CancellationToken)">
            <summary>
            <c>true</c> if destination is a location where other symbols can be added to.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SymbolExtensions.FindSourceDefinition(Roslyn.Compilers.Common.ISymbol,Roslyn.Services.ISolution,System.Threading.CancellationToken)">
            <summary>
            Finds the definition symbol declared in source code for a corresponding reference symbol. 
            Returns null if no such symbol can be found in the specified solution.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SymbolExtensions.FindReferences(Roslyn.Compilers.Common.ISymbol,Roslyn.Services.ISolution)">
            <summary>
            Finds all references to a symbol throughout a solution
            </summary>
            <param name="symbol">The symbol to find references to.</param>
            <param name="solution">The solution to find references within.</param>
        </member>
        <member name="M:Roslyn.Services.SymbolExtensions.FindReferences(Roslyn.Compilers.Common.ISymbol,Roslyn.Services.ISolution,System.Threading.CancellationToken)">
            <summary>
            Finds all references to a symbol throughout a solution
            </summary>
            <param name="symbol">The symbol to find references to.</param>
            <param name="solution">The solution to find references within.</param>
            <param name="cancellationToken">A cancellation token.</param>
        </member>
        <member name="M:Roslyn.Services.SymbolExtensions.FindReferences(Roslyn.Compilers.Common.ISymbol,Roslyn.Services.ISolution,Roslyn.Services.FindReferences.IFindReferencesProgress,System.Collections.Generic.IEnumerable{Roslyn.Services.FindReferences.IReferenceFinder},System.Func{Roslyn.Services.IDocument,System.Boolean},System.Threading.CancellationToken)">
            <summary>
            Finds all references to a symbol throughout a solution
            </summary>
            <param name="symbol">The symbol to find references to.</param>
            <param name="solution">The solution to find references within.</param>
            <param name="includeDocument">An optional predicate function that determines if
            particular documents should be searched.</param>
            <param name="referenceFinders">An optional list of reference finders that determine the
            behavior of searching for different kinds of symbols. If this parameter is not
            specified, the common list of reference finders is used.</param>
            <param name="progress">An optional progress object that will receive progress
            information as the search is undertaken.</param>
            <param name="cancellationToken">An optional cancellation token.</param>
        </member>
        <member name="F:Roslyn.Services.FindReferences.FindReferencesSearchEngine.documentToLocationMap">
            <summary>
            Mapping from a document to the list of reference locations found in it.  Kept around so
            we only notify the callback once when a location is found for a reference (in case
            multiple finders find the same reference location for a symbol).
            </summary>
        </member>
        <member name="F:Roslyn.Services.FindReferences.FindReferencesSearchEngine.foundReferences">
            <summary>
            The resultant collection of all references found per symbol.
            </summary>
        </member>
        <member name="T:Roslyn.Services.FindReferences.IReferenceFinder">
            <summary>
            Extensibility interface to allow extending the IFindReferencesService service.  Implementions
            must be threadsafe as the methods on this interface may be called on multiple threads
            simulataneously.  Implementations should also respect the provided cancellation token and
            should try to cancel themselves quickly when requested.
            </summary>
        </member>
        <member name="M:Roslyn.Services.FindReferences.IReferenceFinder.DetermineProjectsToSearch(Roslyn.Compilers.Common.ISymbol,Roslyn.Services.ISolution,System.Threading.CancellationToken)">
            <summary>
            Called by the find references search engine to determine which projects should be
            searched for a given symbol.  The returned projects will then be searched in parallel. If
            the implementation does not care about the provided symbol then null can be returned
            from this method.
            
            Implementations should endeavor to keep the list of returned projects as small as
            possible to keep search time down to a minimum.  Returning the entire list of projects in
            a solution is not recommended (unless, of course, there is reasonable reason to believe
            there are references in every project).
            
            Implementations of this method must be threadsafe.
            </summary>
        </member>
        <member name="M:Roslyn.Services.FindReferences.IReferenceFinder.DetermineDocumentsToSearch(Roslyn.Compilers.Common.ISymbol,Roslyn.Services.IProject,System.Threading.CancellationToken)">
            <summary>
            Called by the find references search engine to determine which documents in the supplied
            project need to be searched for references.  Only projects returned by
            DetermineProjectsToSearch will be passed to this method.
            
            Implementations should endeavor to keep the list of returned documents as small as
            possible to keep search time down to a minimum.  Returning the entire list of documents
            in a project is not recommended (unless, of course, there is reasonable reason to
            believe there are references in every document).
            
            Implementations of this method must be threadsafe.
            </summary>
        </member>
        <member name="M:Roslyn.Services.FindReferences.IReferenceFinder.FindReferencesInDocument(Roslyn.Compilers.Common.ISymbol,Roslyn.Services.IDocument,System.Threading.CancellationToken)">
            <summary>
            Called by the find references search engine to determine the set of reference locations
            in the provided document.  Only documents returned by DetermineDocumentsToSearch will be
            passed to this method. 
            
            Implementations of this method must be threadsafe.
            </summary>
        </member>
        <member name="M:Roslyn.Services.FindReferences.IReferenceFinder.DetermineCascadedSymbols(Roslyn.Compilers.Common.ISymbol,Roslyn.Services.ISolution,System.Threading.CancellationToken)">
            <summary>
            Called by the find references search engine when a new symbol definition is found.
            Implementations can then choose to request more symbols be searched for.  For example, an
            implementation could choose for the find references search engine to cascade to
            constructors when searching for standard types.
            
            Implementations of this method must be threadsafe.
            </summary>
        </member>
        <member name="M:Roslyn.Services.FindReferences.AbstractReferenceFinder`1.FindDocuments(Roslyn.Services.IProject,System.Threading.CancellationToken,System.String[])">
            <summary>
            Finds all the documents in the provided project that contain the reqeusted string
            values
            </summary>
        </member>
        <member name="T:Roslyn.Services.LanguageServices.ISyntaxTreeFactoryService">
            <summary>
            Factory service for creating syntax trees.
            </summary>
        </member>
        <member name="T:Roslyn.Services.ISyntaxVersionLanguageService">
            <summary>
            A service that computes the syntactic version of a syntax tree
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISyntaxVersionLanguageService.ComputePublicHash(Roslyn.Compilers.Common.CommonSyntaxTree,System.Threading.CancellationToken)">
            <summary>
            Computes a hash corresponding to the public declarations in the syntax tree.
            Interior regions like method bodies, or trivia are not included.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Internal.Log.InteractionClass">
            <summary>
            An interaction class defines how much time is expected to reach a time point, the response 
            time point being the most commonly used. The interaction classes correspond to human perception,
            so, for example, all interactions in the Fast class are perceived as fast and roughly feel like 
            they have the same performance. By defining these interaction classes, we can describe 
            performance using adjectives that have a precise, consistent meaning.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Extensions.SimpleIntervalTreeExtensions.IntersectsWith(Roslyn.Services.Shared.Collections.SimpleIntervalTree{Roslyn.Compilers.TextSpan},Roslyn.Compilers.TextSpan)">
            <summary>
            check whether the given span is intersects with the tree
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.AbstractFormattingRule">
            <summary>
            base IFormattingRule implementation that users can override to provide
            their own functionality
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.IFormattingRule">
            <summary>
            Provide a custom formatting operation provider that can intercept/filter/replace default formatting operations.
            </summary>
            <remarks>All methods defined in this interface can be called concurrently. Must be thread-safe.</remarks>
        </member>
        <member name="M:Roslyn.Services.Formatting.IFormattingRule.AddSuppressOperations(System.Collections.Generic.List{Roslyn.Services.Formatting.SuppressOperation},Roslyn.Compilers.Common.CommonSyntaxNode,Roslyn.Services.Formatting.NextAction{Roslyn.Services.Formatting.SuppressOperation})">
            <summary>
            Returns SuppressWrappingIfOnSingleLineOperations under a node either by itself or by
            filtering/replacing operations returned by NextOperation
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.IFormattingRule.AddAnchorIndentationOperations(System.Collections.Generic.List{Roslyn.Services.Formatting.AnchorIndentationOperation},Roslyn.Compilers.Common.CommonSyntaxNode,Roslyn.Services.Formatting.NextAction{Roslyn.Services.Formatting.AnchorIndentationOperation})">
            <summary>
            returns AnchorIndentationOperations under a node either by itself or by filtering/replacing operations returned by NextOperation
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.IFormattingRule.AddIndentBlockOperations(System.Collections.Generic.List{Roslyn.Services.Formatting.IndentBlockOperation},Roslyn.Compilers.Common.CommonSyntaxNode,Roslyn.Services.Formatting.NextAction{Roslyn.Services.Formatting.IndentBlockOperation})">
            <summary>
            returns IndentBlockOperations under a node either by itself or by filtering/replacing operations returned by NextOperation
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.IFormattingRule.AddAlignTokensOperations(System.Collections.Generic.List{Roslyn.Services.Formatting.AlignTokensOperation},Roslyn.Compilers.Common.CommonSyntaxNode,Roslyn.Services.Formatting.NextAction{Roslyn.Services.Formatting.AlignTokensOperation})">
            <summary>
            returns AlignTokensOperations under a node either by itself or by filtering/replacing operations returned by NextOperation
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.IFormattingRule.GetAdjustNewLinesOperation(Roslyn.Compilers.Common.CommonSyntaxToken,Roslyn.Compilers.Common.CommonSyntaxToken,Roslyn.Services.Formatting.NextOperation{Roslyn.Services.Formatting.AdjustNewLinesOperation})">
            <summary>
            returns AdjustNewLinesOperation between two tokens either by itself or by filtering/replacing a operation returned by NextOperation
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.IFormattingRule.GetAdjustSpacesOperation(Roslyn.Compilers.Common.CommonSyntaxToken,Roslyn.Compilers.Common.CommonSyntaxToken,Roslyn.Services.Formatting.NextOperation{Roslyn.Services.Formatting.AdjustSpacesOperation})">
            <summary>
            returns AdjustSpacesOperation between two tokens either by itself or by filtering/replacing a operation returned by NextOperation
            </summary>
        </member>
        <member name="M:Roslyn.Services.ICodeRefactoringProvider.GetRefactoring(Roslyn.Services.IDocument,Roslyn.Compilers.TextSpan,System.Threading.CancellationToken)">
             <summary>
             Gets the refactoring for the provided snapshot span in the given tree. Implementations
             must be threadsafe and should respond quickly to cancellation requests.
            
             If an implementation has no refactoring for this span it should return null.
             </summary>
        </member>
        <member name="M:Roslyn.Services.ICodeIssueProvider.GetIssues(Roslyn.Services.IDocument,Roslyn.Compilers.Common.CommonSyntaxNode,System.Threading.CancellationToken)">
             <summary>
             Gets the code issues for the provided syntax node. Implementations need not recurse down
             this piece of syntax. The code action engine will call into this provider with all
             approprite syntactic elements. Implementations must be threadsafe and should respond
             quickly to cancellation requests.
            
             If an implementation has no issues for this syntax it should return null.  It is highly
             recommended that implementations allocate as little memory as possible as this may be
             called many times across all the syntax trees in a project.
             </summary>
        </member>
        <member name="M:Roslyn.Services.ICodeIssueProvider.GetIssues(Roslyn.Services.IDocument,Roslyn.Compilers.Common.CommonSyntaxToken,System.Threading.CancellationToken)">
             <summary>
             Gets the code issues for the provided syntax token. Implementations need not recurse
             down this piece of syntax. The code action engine will call into this provider with all
             approprite syntactic elements. Implementations must be threadsafe and should respond
             quickly to cancellation requests.
            
             If an implementation has no issues for this syntax it should return null.  It is highly
             recommended that implementations allocate as little memory as possible as this may be
             called many times across all the syntax trees in a project.
             </summary>
        </member>
        <member name="T:Roslyn.Services.CodeActionEdit">
            <summary>
            An edit that an <see cref="T:Roslyn.Services.ICodeAction"/> would like to apply.  Many edits can simply be
            represented as a change to the <see cref="T:Roslyn.Services.ISolution"/> of the current <see cref="T:Roslyn.Services.IWorkspace"/>.  To accomplish this, all that needs to be provided is the <see cref="P:Roslyn.Services.CodeActionEdit.UpdatedSolution"/>.  This is sufficient for normal ISolution operations
            such as updating the syntax tree in a document, or adding or removing documents. Other sorts
            of edits may need to change things outside of updating the workspace's solution. For
            example, opening a document for a user to edit. For that sort of change, the <see cref="P:Roslyn.Services.CodeActionEdit.PreOperation"/> and <see cref="P:Roslyn.Services.CodeActionEdit.PostOperation"/> can be
            used.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CodeActionEdit.PreOperation">
            <summary>
            Operation to apply before updating the <see cref="T:Roslyn.Services.IWorkspace"/>'s <see cref="T:Roslyn.Services.ISolution"/>. Null if there is no operation to apply.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CodeActionEdit.UpdatedSolution">
            <summary>
            The <see cref="T:Roslyn.Services.ISolution"/> that the current <see cref="T:Roslyn.Services.IWorkspace"/> should be updated
            to.  Can be null if no change is necessary.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CodeActionEdit.PostOperation">
            <summary>
            Operation to apply after updating the <see cref="T:Roslyn.Services.IWorkspace"/>'s <see cref="T:Roslyn.Services.ISolution"/>. Null if there is no operation to apply.
            </summary>
        </member>
        <member name="T:Roslyn.Services.ICodeActionOperation">
            <summary>
            Represents an operation that can be applied (and previewed) as the result of a code action.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ICodeActionOperation.Apply(Roslyn.Services.IWorkspace,System.Threading.CancellationToken)">
            <summary>
            Apply this fix to the provided workspace.  It is recommended, but not required, that this
            method changes no state.  This method will only be called from the same thread that
            created the quick fix that created this edit.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ICodeActionOperation.GetPreview(Roslyn.Services.IWorkspace,System.Threading.CancellationToken)">
            <summary>
            Gets a preview for this edit.  This method must not change any state and must be
            threadsafe.
            </summary>
        </member>
        <member name="T:Roslyn.Services.CodeIssue">
            <summary>
            Represents an issue with a portion of code.  The issue may or may not have fixes associated
            with it.
            </summary>
        </member>
        <member name="T:Roslyn.Services.CodeActions.ICodeIssueOrRefactoring">
            <summary>
            For testing purposes.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CodeIssue.Kind">
            <summary>
            The severity of the code issue.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CodeIssue.TextSpan">
            <summary>
            The span of this code issue.  The span may be used by the host to present the issue (for
            example, with a squiggle or other adornment).
            </summary>
        </member>
        <member name="P:Roslyn.Services.CodeIssue.Description">
            <summary>
            An optional description of the issue.  The description may be used by the host to present
            the issue (for example, in an error list or tooltip).  If a description is provided, no
            actions need be provided.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CodeIssue.Actions">
            <summary>
            An optional list of actions that can be used to try to fix the issue.  The actions may be
            used by the host to present the issue (for example, in a menu or smart tag).  If actions
            are provided, no description is needed.
            </summary>
        </member>
        <member name="T:Roslyn.Services.CodeRefactoring">
            <summary>
            Represents a set of transformations that can be applied to a piece of code.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CodeRefactoring.Actions">
            <summary>
            List of actions that can be used to transform the code.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CodeRefactoring.TextSpan">
            <summary>
            Optional span that this transform applies to. This span is used purely to guide where
            the transform is presented to the user. The host is free to ignore this if it chooses
            to.
            </summary>
        </member>
        <member name="T:Roslyn.Services.CodeCleanup.ICodeCleanupProvider">
            <summary>
            code cleaner that reqires semantic information to do its job
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeCleanup.ICodeCleanupProvider.Cleanup(Roslyn.Services.IDocument,System.Collections.Generic.IEnumerable{Roslyn.Compilers.TextSpan},System.Threading.CancellationToken)">
            <summary>
            this should apply its code clean up logic to its 
            </summary>
        </member>
        <member name="P:Roslyn.Services.CodeCleanup.ICodeCleanupProvider.Name">
            <summary>
            return name of this provider
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeGeneration.ICodeGenerationService.CreateEventDeclaration(Roslyn.Compilers.Common.IEventSymbol,Roslyn.Services.CodeGeneration.CodeGenerationDestination,Roslyn.Services.CodeGeneration.CodeGenerationOptions)">
            <summary>
            Returns a newly created event declaration node from the provided event.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeGeneration.ICodeGenerationService.CreateFieldDeclaration(Roslyn.Compilers.Common.IFieldSymbol,Roslyn.Services.CodeGeneration.CodeGenerationDestination,Roslyn.Services.CodeGeneration.CodeGenerationOptions)">
            <summary>
            Returns a newly created field declaration node from the provided field.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeGeneration.ICodeGenerationService.CreateMethodDeclaration(Roslyn.Compilers.Common.IMethodSymbol,Roslyn.Services.CodeGeneration.CodeGenerationDestination,Roslyn.Services.CodeGeneration.CodeGenerationOptions)">
            <summary>
            Returns a newly created method declaration node from the provided method.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeGeneration.ICodeGenerationService.CreatePropertyDeclaration(Roslyn.Compilers.Common.IPropertySymbol,Roslyn.Services.CodeGeneration.CodeGenerationDestination,Roslyn.Services.CodeGeneration.CodeGenerationOptions)">
            <summary>
            Returns a newly created property declaration node from the provided property.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeGeneration.ICodeGenerationService.CreateNamedTypeDeclaration(Roslyn.Compilers.Common.INamedTypeSymbol,Roslyn.Services.CodeGeneration.CodeGenerationDestination,Roslyn.Services.CodeGeneration.CodeGenerationOptions)">
            <summary>
            Returns a newly created named type declaration node from the provided named type.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeGeneration.ICodeGenerationService.CreateNamespaceDeclaration(Roslyn.Compilers.Common.INamespaceSymbol,Roslyn.Services.CodeGeneration.CodeGenerationDestination,Roslyn.Services.CodeGeneration.CodeGenerationOptions)">
            <summary>
            Returns a newly created namespace declaration node from the provided namespace.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeGeneration.ICodeGenerationService.AddEvent``1(``0,Roslyn.Compilers.Common.IEventSymbol,Roslyn.Services.CodeGeneration.CodeGenerationOptions,System.Threading.CancellationToken)">
            <summary>
            Adds an event into destination.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeGeneration.ICodeGenerationService.AddField``1(``0,Roslyn.Compilers.Common.IFieldSymbol,Roslyn.Services.CodeGeneration.CodeGenerationOptions,System.Threading.CancellationToken)">
            <summary>
            Adds a field into destination.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeGeneration.ICodeGenerationService.AddMethod``1(``0,Roslyn.Compilers.Common.IMethodSymbol,Roslyn.Services.CodeGeneration.CodeGenerationOptions,System.Threading.CancellationToken)">
            <summary>
            Adds a method into destination.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeGeneration.ICodeGenerationService.AddProperty``1(``0,Roslyn.Compilers.Common.IPropertySymbol,Roslyn.Services.CodeGeneration.CodeGenerationOptions,System.Threading.CancellationToken)">
            <summary>
            Adds a property into destination. 
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeGeneration.ICodeGenerationService.AddNamedType``1(``0,Roslyn.Compilers.Common.INamedTypeSymbol,Roslyn.Services.CodeGeneration.CodeGenerationOptions,System.Threading.CancellationToken)">
            <summary>
            Adds a named type into destination. 
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeGeneration.ICodeGenerationService.AddNamespace``1(``0,Roslyn.Compilers.Common.INamespaceSymbol,Roslyn.Services.CodeGeneration.CodeGenerationOptions,System.Threading.CancellationToken)">
            <summary>
            Adds a namespace into destination. 
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeGeneration.ICodeGenerationService.AddMembers``1(``0,System.Collections.Generic.IEnumerable{Roslyn.Compilers.Common.ISymbol},Roslyn.Services.CodeGeneration.CodeGenerationOptions,System.Threading.CancellationToken)">
            <summary>
            Adds a method into destination.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeGeneration.ICodeGenerationService.AddParameters``1(``0,System.Collections.Generic.IEnumerable{Roslyn.Compilers.Common.IParameterSymbol},Roslyn.Services.CodeGeneration.CodeGenerationOptions,System.Threading.CancellationToken)">
            <summary>
            Adds the parameters to destination.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeGeneration.ICodeGenerationService.AddStatements``1(``0,System.Collections.Generic.IEnumerable{Roslyn.Compilers.Common.CommonSyntaxNode},System.Collections.Generic.IEnumerable{Roslyn.Compilers.Common.CommonSyntaxToken},Roslyn.Services.CodeGeneration.CodeGenerationOptions,System.Threading.CancellationToken)">
            <summary>
            Adds the statements to destination.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeGeneration.ICodeGenerationService.AddEvent(Roslyn.Services.ISolution,Roslyn.Compilers.Common.INamedTypeSymbol,Roslyn.Compilers.Common.IEventSymbol,Roslyn.Services.CodeGeneration.CodeGenerationOptions,System.Threading.CancellationToken)">
            <summary>
            Adds a field with the provided signature into destination.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeGeneration.ICodeGenerationService.AddField(Roslyn.Services.ISolution,Roslyn.Compilers.Common.INamedTypeSymbol,Roslyn.Compilers.Common.IFieldSymbol,Roslyn.Services.CodeGeneration.CodeGenerationOptions,System.Threading.CancellationToken)">
            <summary>
            Adds a field with the provided signature into destination.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeGeneration.ICodeGenerationService.AddMethod(Roslyn.Services.ISolution,Roslyn.Compilers.Common.INamedTypeSymbol,Roslyn.Compilers.Common.IMethodSymbol,Roslyn.Services.CodeGeneration.CodeGenerationOptions,System.Threading.CancellationToken)">
            <summary>
            Adds a method with the provided signature into destination.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeGeneration.ICodeGenerationService.AddProperty(Roslyn.Services.ISolution,Roslyn.Compilers.Common.INamedTypeSymbol,Roslyn.Compilers.Common.IPropertySymbol,Roslyn.Services.CodeGeneration.CodeGenerationOptions,System.Threading.CancellationToken)">
            <summary>
            Adds a property with the provided signature into destination.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeGeneration.ICodeGenerationService.AddNamedType(Roslyn.Services.ISolution,Roslyn.Compilers.Common.INamedTypeSymbol,Roslyn.Compilers.Common.INamedTypeSymbol,Roslyn.Services.CodeGeneration.CodeGenerationOptions,System.Threading.CancellationToken)">
            <summary>
            Adds a named type into destination.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeGeneration.ICodeGenerationService.AddNamedType(Roslyn.Services.ISolution,Roslyn.Compilers.Common.INamespaceSymbol,Roslyn.Compilers.Common.INamedTypeSymbol,Roslyn.Services.CodeGeneration.CodeGenerationOptions,System.Threading.CancellationToken)">
            <summary>
            Adds a named type into destination.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeGeneration.ICodeGenerationService.AddNamespace(Roslyn.Services.ISolution,Roslyn.Compilers.Common.INamespaceSymbol,Roslyn.Compilers.Common.INamespaceSymbol,Roslyn.Services.CodeGeneration.CodeGenerationOptions,System.Threading.CancellationToken)">
            <summary>
            Adds a namespace into destination.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeGeneration.ICodeGenerationService.AddNamespaceOrType(Roslyn.Services.ISolution,Roslyn.Compilers.Common.INamespaceSymbol,Roslyn.Compilers.Common.INamespaceOrTypeSymbol,Roslyn.Services.CodeGeneration.CodeGenerationOptions,System.Threading.CancellationToken)">
            <summary>
            Adds a namespace or type into destination.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeGeneration.ICodeGenerationService.AddMembers(Roslyn.Services.ISolution,Roslyn.Compilers.Common.INamedTypeSymbol,System.Collections.Generic.IEnumerable{Roslyn.Compilers.Common.ISymbol},Roslyn.Services.CodeGeneration.CodeGenerationOptions,System.Threading.CancellationToken)">
            <summary>
            Adds all the provided members into destination.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeGeneration.ICodeGenerationService.CanAddTo(Roslyn.Compilers.Common.ISymbol,Roslyn.Services.ISolution,System.Threading.CancellationToken)">
            <summary>
            <c>true</c> if destination is a location where other symbols can be added to.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeGeneration.ICodeGenerationService.CanAddTo(Roslyn.Compilers.Common.CommonSyntaxNode,Roslyn.Services.ISolution,System.Threading.CancellationToken)">
            <summary>
            <c>true</c> if destination is a location where other symbols can be added to.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Completion.CompletionExtensions.FilterToVisibleAndBrowsableSymbols``1(System.Collections.Generic.IEnumerable{``0},System.Boolean,Roslyn.Compilers.Common.CommonCompilation)">
            <summary>
            First, remove symbols from the set if they are overridden by other symbols in the set.
            If a symbol is overridden only by symbols outside of the set, then it is not removed. 
            This is useful for filtering out symbols that cannot be accessed in a given context due
            to the existence of overriding members. Second, remove remaining symbols that are not 
            editor browsable based on the EditorBrowsable attribute.
            </summary>
        </member>
        <member name="T:Roslyn.Services.ICompletionProvider">
            <summary>
            Extensibility interface for clients who want to participate in completion inside an editor.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ICompletionProvider.GetGroup(Roslyn.Services.IDocument,System.Int32,Roslyn.Services.CompletionTriggerInfo,System.Threading.CancellationToken)">
            <summary>
            Returns a CompletionItemGroup for the specified position in the document.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ICompletionProvider.IsTriggerCharacter(Roslyn.Compilers.IText,System.Int32)">
            <summary>
            Returns true if the character at the specific position in the text snapshot should
            trigger completion. Implementers of this will be called on the main UI thread and should
            only do minimal textual checks to determine if they should be presented.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ICompletionProvider.IsFilterCharacter(Roslyn.Services.CompletionItem,System.Char,System.String)">
            <summary>
            Returns true if the character typed should be used to filter the specified completion
            item.  A character will be checked to see if it should filter an item.  If not, it will be
            checked to see if it should commit that item.  If it does neither, then completion will
            be dismissed.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ICompletionProvider.IsCommitCharacter(Roslyn.Services.CompletionItem,System.Char,System.String)">
            <summary>
            Returns true if the character is one that can commit the specified completion item. A
            character will be checked to see if it should filter an item.  If not, it will be checked
            to see if it should commit that item.  If it does neither, then completion will be
            dismissed.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ICompletionProvider.SendEnterThroughToEditor(Roslyn.Services.CompletionItem,System.String)">
            <summary>
            Returns true if the enter key that was typed should also be sent through to hte editor
            after committing the provided completion item.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ICompletionProvider.GetTextChange(Roslyn.Services.CompletionItem,System.Nullable{System.Char})">
            <summary>
            The text change that will be made when this item is committed.  The text change includes
            both the span of text to replace (respective to the original document text when this
            completion item was created) and the text to replace it with.  The span will be adjusted
            automatically by the completion engine to fit on the current text using "EdgeInclusive"
            semantics.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Implementation.Completion.CompletionProviders.AbstractSymbolCompletionProvider.CreateItems(Roslyn.Services.IDocument,System.Int32,System.Collections.Generic.IEnumerable{Roslyn.Compilers.Common.ISymbol},System.Nullable{Roslyn.Services.Implementation.Completion.CompletionProviders.CompletionContext},System.Threading.CancellationToken)">
            <summary>
            Given a list of symbols, creates the list of completion items for them.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Implementation.Completion.CompletionProviders.AbstractSymbolCompletionProvider.CreateItem(Roslyn.Utilities.ValueTuple{System.String,System.String},Roslyn.Services.IDocument,System.Collections.Generic.List{Roslyn.Compilers.Common.ISymbol},Roslyn.Compilers.Common.CommonLocation,Roslyn.Services.Implementation.Completion.CompletionProviders.CompletionContext,Roslyn.Compilers.TextSpan,System.Threading.CancellationToken)">
            <summary>
            Given a Symbol, creates the completion item for it.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CompletionItem.GetDescription(System.Threading.CancellationToken)">
            <summary>
            A description to present to the user for this completion item.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CompletionItem.CompletionProvider">
            <summary>
            The ICompletionProvider that this CompletionItem was created from.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CompletionItem.DisplayText">
            <summary>
            The text for the completion item should be presented to the user (for example, in a
            completion list in an IDE).
            </summary>
        </member>
        <member name="P:Roslyn.Services.CompletionItem.SortText">
            <summary>
            A string that is used for comparing completion items so that they can be ordered.  This
            is often the same as the DisplayText but may be different in certain circumstances.  For
            example, in C# a completion item with the display text "@int" might have the sort text
            "int" so that it would appear next to other items with similar names instead of
            appearing before, or after all the items due to the leading @ character.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CompletionItem.Preselect">
            <summary>
            Whether or not this item should be preselected when presented to the user.  It is up to
            the ICompletionRules to determine how this flag should be handled.  However, the default
            behavior is that, if there has been no filter text then a preselected item is preferred
            over any other item. If there has been filter text supplied, then a preselected item is
            preferred over another item if the ICompletoinRules currently in effect deem them
            otherwise identical.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CompletionItem.FilterSpan">
            <summary>
            The span(respective to the original document text when this completion item was created)
            to use for determining what text should be used to filter this completion item against.
            Most commonly this is the same text span that is in TextChange, however in specialized
            cases it can be different.  For example, in C#, if a user types "foo." the item "operator
            int" may be placed in the list.  It's filter span will be created a after the dot
            position (so that typing "oper" will help filter down to the list of operators).
            However, the text change may extend further backward so that if that item is committed
            the resultant text becomes "((int)foo).
            </summary>
        </member>
        <member name="P:Roslyn.Services.CompletionItem.IsBuilder">
            <summary>
            A CompletionItem marked as a builder will be presented as an Intellisense Builder,
            initially with its display text, which will be replaced as the user types.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CompletionItem.Glyph">
            <summary>
            An appropriate icon to present to the user for this completion item.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ICompletionService.GetDefaultCompletionProviders">
            <summary>
            Returns the default set of completion providers for this document.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ICompletionService.GetGroups(Roslyn.Services.IDocument,System.Int32,Roslyn.Services.CompletionTriggerInfo,System.Collections.Generic.IEnumerable{Roslyn.Services.ICompletionProvider},System.Threading.CancellationToken)">
            <summary>
            Returns the CompletionItemGroups for the specified position in the document.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ICompletionService.IsTriggerCharacter(Roslyn.Compilers.IText,System.Int32,System.Collections.Generic.IEnumerable{Roslyn.Services.ICompletionProvider})">
            <summary>
            Returns true if the character at the specific position in the document should trigger
            completion.
            </summary>   
        </member>
        <member name="M:Roslyn.Services.ICompletionService.GetDefaultTrackingSpan(Roslyn.Services.IDocument,System.Int32,System.Threading.CancellationToken)">
            <summary>
            Get the default tracking span, based on the language, that providers are likely to use.
            </summary>
        </member>
        <member name="T:Roslyn.Services.CompletionItemGroup">
            <summary>
            A group of items to be presented to a user in a completion list.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CompletionItemGroup.IsExclusive">
            <summary>
            True if this group is exclusive.  If a group is exclusive, then only those items in that
            group will be presented to the user.  If a group is non-exclusive, then all other
            completion providers will be asked to augment the list of items it has provided.
            
            If multiple groups are marked as exclusive, only the first one returned from a provider
            will be used.  Providers can be ordered using the OrderAttribute.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CompletionItemGroup.Items">
            <summary>
            The list of completion items to present to the user.  Can not be empty.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CompletionItemGroup.Builder">
            <summary>
            A completion builder to present to the user.  Can be null if no builder need be
            presented.  A builder is generally useful when the location in source where completion is
            requested represents a place where both completion items can be offered, and new items
            can be declared.  By offering a builder the user has the option of declaring a new item
            in an unimpeded manner.
            </summary>
        </member>
        <member name="T:Roslyn.Services.CompletionTriggerInfo">
            <summary>
            Provides information about what triggered completion.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CompletionTriggerInfo.TriggerReason">
            <summary>
            Provides the rason that completion was triggered.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CompletionTriggerInfo.TriggerCharacter">
            <summary>
            If the <see cref="P:Roslyn.Services.CompletionTriggerInfo.TriggerReason"/> was <see cref="F:Roslyn.Services.CompletionTriggerReason.TypeCharCommand"/> then this was the character that was
            typed.  Otherwise it is null.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CompletionTriggerInfo.IsAugment">
            <summary>
            Returns true if the reason completion was triggered was to augment an existing list of
            completion items.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CompletionTriggerInfo.IsDebugger">
            <summary>
             Returns true if completion was triggered by the debugger.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CompletionTriggerInfo.IsImmediateWindow">
            <summary>
            Return true if completion is running in the Immediate Window.
            </summary>
        </member>
        <member name="F:Roslyn.Services.CompletionTriggerReason.InvokeCompletionCommand">
            <summary>
            Completion was triggered through the 'Invoke Completion' command
            </summary>
        </member>
        <member name="F:Roslyn.Services.CompletionTriggerReason.TypeCharCommand">
            <summary>
            Completion was triggered through teh 'Type Char' command.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ITextCompletionProvider.GetGroup(Roslyn.Compilers.IText,System.Int32,Roslyn.Services.CompletionTriggerInfo,System.Threading.CancellationToken)">
            <summary>
            Returns a CompletionItemGroup for the specified position in the text.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ITextCompletionProvider.GetAugmentGroup(Roslyn.Compilers.IText,System.Int32,Roslyn.Services.CompletionTriggerInfo,System.Threading.CancellationToken)">
            <summary>
            Called if another completion provider has provided a completion group to give this
            provider an opportunity to add elements to that group, even if it would not have
            produced elements otherwise.
            </summary>
        </member>
        <member name="T:Roslyn.Services.ExtractMethod.ISyntaxTriviaService">
            <summary>
            syntax trivia related services
            </summary>
        </member>
        <member name="M:Roslyn.Services.ExtractMethod.ISyntaxTriviaService.SaveTriviaAroundSelection(Roslyn.Compilers.Common.CommonSyntaxNode,Roslyn.Compilers.TextSpan)">
            <summary>
            save trivia around span and let user restore trivia later
            </summary>
            <param name="root">root node of a tree</param>
            <param name="textSpan">selection whose trivia around its edges will be saved</param>
            <returns>object that holds onto enough information to restore trivia later</returns>
        </member>
        <member name="T:Roslyn.Services.ExtractMethod.ITriviaSavedResult">
            <summary>
            contains information to restore trivia later on to the annotated tree
            </summary>
        </member>
        <member name="M:Roslyn.Services.ExtractMethod.ITriviaSavedResult.RestoreTrivia(Roslyn.Compilers.Common.CommonSyntaxNode,Roslyn.Services.ExtractMethod.AnnotationResolver,Roslyn.Services.ExtractMethod.TriviaResolver)">
            <summary>
            restore saved trivia to given tree
            </summary>
            <param name="root">root node to the annotated tree</param>
            <param name="annotationResolver">it provides a custom way of resolving annotations to retrive right tokens to attach trivia</param>
            <param name="triviaResolver">it provides a custom way of creating trivia list between two tokens</param>
            <returns>root node to a trivia restored tree</returns>
        </member>
        <member name="P:Roslyn.Services.ExtractMethod.ITriviaSavedResult.Root">
            <summary>
            root node of the annotated tree.
            </summary>
        </member>
        <member name="T:Roslyn.Services.ExtractMethod.OperationStatusFlag">
            <summary>
            status code for extract method operations
            </summary>
        </member>
        <member name="F:Roslyn.Services.ExtractMethod.OperationStatusFlag.Succeeded">
            <summary>
            operation has succeeded
            </summary>
        </member>
        <member name="F:Roslyn.Services.ExtractMethod.OperationStatusFlag.Suggestion">
            <summary>
            operation has succeeded with a span that is different than original span
            </summary>
        </member>
        <member name="F:Roslyn.Services.ExtractMethod.OperationStatusFlag.BestEffort">
            <summary>
            operation has failed but can provide some best effort result
            </summary>
        </member>
        <member name="M:Roslyn.Services.ExtractMethod.Extensions.GetTokenWithAnnotaton(Roslyn.Services.IDocument,Roslyn.Compilers.SyntaxAnnotation,System.Threading.CancellationToken)">
            <summary>
            get tokens with given annotation in current document
            </summary>
        </member>
        <member name="M:Roslyn.Services.ExtractMethod.Extensions.ResolveType``1(Roslyn.Services.IDocument,``0,System.Threading.CancellationToken)">
            <summary>
            resolve the given symbol against compilation this snapshot has
            </summary>
        </member>
        <member name="M:Roslyn.Services.ExtractMethod.Extensions.HasDiagnostics(Roslyn.Compilers.Common.CommonSyntaxNode)">
            <summary>
            check whether node contains error for itself but not from its child node
            </summary>
        </member>
        <member name="P:Roslyn.Services.ExtractMethodResult.Succeeded">
            <summary>
            True if the extract method operation succeeded.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ExtractMethodResult.SucceededWithSuggestion">
            <summary>
            True if the extract method operation is possible if the original span is adjusted.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ExtractMethodResult.Document">
            <summary>
            The transformed document that was produced as a result of the extract method operation.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ExtractMethodResult.Reasons">
            <summary>
            The reasons why the extract method operation did not succeed.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ExtractMethodResult.MethodDeclarationNode">
            <summary>
            the generated method node that contains the extracted code.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ExtractMethodResult.InvocationNameToken">
            <summary>
            The name token for the invocation node that replaces the extracted code.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ExtractMethodResult.Status">
            <summary>
            internal status of result. more fine grained reason why it is failed. 
            </summary>
        </member>
        <member name="M:Roslyn.Services.ExtractMethod.MethodExtractor.Analyzer.GetFlowAnalysisNodeRange">
            <summary>
            convert text span to node range for the flow analysis API
            </summary>
        </member>
        <member name="M:Roslyn.Services.ExtractMethod.MethodExtractor.Analyzer.ContainsReturnStatementInSelectedCode(System.Collections.Generic.IEnumerable{Roslyn.Compilers.Common.CommonSyntaxNode})">
            <summary>
            check whether selection contains return statement or not
            </summary>
        </member>
        <member name="M:Roslyn.Services.ExtractMethod.MethodExtractor.Analyzer.CreateFromSymbol(Roslyn.Compilers.Common.CommonCompilation,Roslyn.Compilers.Common.ISymbol,Roslyn.Compilers.Common.ITypeSymbol,Roslyn.Services.ExtractMethod.VariableStyle)">
            <summary>
            create VariableInfo type
            </summary>
        </member>
        <member name="M:Roslyn.Services.ExtractMethod.MethodExtractor.Analyzer.GetIndexOfVariableInfoToUseAsReturnValue(System.Collections.Generic.IList{Roslyn.Services.ExtractMethod.MethodExtractor.VariableInfo})">
            <summary>
            among variables that will be used as parameters at the extracted method, check whether one of the parameter can be used as return
            </summary>
        </member>
        <member name="M:Roslyn.Services.ExtractMethod.MethodExtractor.Analyzer.GetRangeVariableType(Roslyn.Compilers.Common.ISemanticModel,Roslyn.Compilers.Common.IRangeVariableSymbol)">
            <summary>
            get type of the range variable symbol
            </summary>
        </member>
        <member name="M:Roslyn.Services.ExtractMethod.MethodExtractor.Analyzer.ReadOnlyFieldAllowed">
            <summary>
            check whether the selection is at the placed where readonly field is allowed to be extracted out
            </summary>
            <returns></returns>
        </member>
        <member name="P:Roslyn.Services.ExtractMethod.MethodExtractor.AnalyzerResult.UseInstanceMember">
            <summary>
            used to determine whether static can be used
            </summary>
        </member>
        <member name="P:Roslyn.Services.ExtractMethod.MethodExtractor.AnalyzerResult.EndOfSelectionReachable">
            <summary>
            used to determine whether "return" statement needs to be inserted
            </summary>
        </member>
        <member name="P:Roslyn.Services.ExtractMethod.MethodExtractor.AnalyzerResult.Document">
            <summary>
            document this result is based on
            </summary>
        </member>
        <member name="P:Roslyn.Services.ExtractMethod.MethodExtractor.AnalyzerResult.ReturnType">
            <summary>
            return type
            </summary>
        </member>
        <member name="P:Roslyn.Services.ExtractMethod.MethodExtractor.AnalyzerResult.Status">
            <summary>
            analyzer result operation status
            </summary>
        </member>
        <member name="T:Roslyn.Services.ExtractMethod.MethodExtractor.VariableSymbol">
            <summary>
            temporary symbol until we have a symbol that can hold onto both local and parameter symbol
            </summary>
        </member>
        <member name="P:Roslyn.Services.ExtractMethod.MethodExtractor.VariableSymbol.OriginalTypeHadAnonymousTypeOrDelegate">
            <summary>
            return true if original type had anonymous type or delegate somewhere in the type
            </summary>
        </member>
        <member name="P:Roslyn.Services.ExtractMethod.MethodExtractor.VariableSymbol.OriginalType">
            <summary>
            get the original type with anonymous type removed
            </summary>
        </member>
        <member name="M:Roslyn.Services.ExtractMethod.OperationStatus.Create``1(Roslyn.Services.ExtractMethod.OperationStatus,``0)">
            <summary>
            create operation status with the given data
            </summary>
        </member>
        <member name="T:Roslyn.Services.ExtractMethod.OperationStatus`1">
            <summary>
            operation status paired with data
            </summary>
        </member>
        <member name="T:Roslyn.Services.ExtractMethod.SelectionResult">
            <summary>
            clean up this code when we do selection validator work.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.BuildTargets">
            <summary>
            Defines a list of build targets and operations to modify that list.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.BuildTargets.Remove(System.String)">
            <summary>
            Remove the specified target from the build targets. 
            
            If the target is nested (a dependent target) of one of the build targets, 
            promote the siblings of the target to the formal list (in execution order.)
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.BuildTargets.RemoveAfter(System.String,System.Boolean)">
            <summary>
            Remove all targets after the specified target (and possibly also removing the specified target.)
            
            If the a removed target is nested (a dependent target) of one of the build targets, 
            promote the siblings of the removed target to the formal list (in execution order.)
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.ExportWorkspaceServiceAttribute">
            <summary>
            Specifies the exact type of the service exported by the IWorkspaceService.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.DefaultLoggerFactoryServiceFactory">
            <summary>
            workspace service that will return default implementation of logger
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.ILoggerFactoryService">
            <summary>
            logger factory service that will return logger
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.ILoggerFactoryService.GetLogger">
            <summary>
            return roslyn logger
            </summary>
        </member>
        <member name="T:Roslyn.Services.ExportLanguageServiceFactoryAttribute">
            <summary>
            Specifies the exact type of the language service constructable by the ILanguageServiceFactory.
            </summary>
        </member>
        <member name="T:Roslyn.Services.ILanguageServiceFactory">
            <summary>
            A factory that creates instances of specific language services.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.IHaveLanguageServiceProviderFactory">
            <summary>
            Provides access to all available workspace services.
            </summary>
        </member>
        <member name="T:Roslyn.Services.CodeCleanup.ICodeCleanerService">
            <summary>
            internal code cleanup service interface
            
            this is not supposed to be used directly. it just provide a way to get the right service from each language
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeCleanup.ICodeCleanerService.GetDefaultProviders">
            <summary>
            returns default code cleaners
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeCleanup.ICodeCleanerService.Cleanup(Roslyn.Services.IDocument,System.Collections.Generic.IEnumerable{Roslyn.Compilers.TextSpan},System.Collections.Generic.IEnumerable{Roslyn.Services.CodeCleanup.ICodeCleanupProvider},System.Threading.CancellationToken)">
            <summary>
            this will run all provided code cleaners in an order that is given to the method.
            
            this is for a cleaner that requires semantic information to do its job
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeCleanup.AbstractCodeCleanerService.GetPreviousTokenStartPosition(Roslyn.Services.CodeCleanup.AbstractCodeCleanerService.SpanMarkerType,Roslyn.Compilers.Common.CommonSyntaxToken)">
            <summary>
            get proper start position based on span marker type
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeCleanup.AbstractCodeCleanerService.GetNextTokenEndPosition(Roslyn.Services.CodeCleanup.AbstractCodeCleanerService.SpanMarkerType,Roslyn.Compilers.Common.CommonSyntaxToken)">
            <summary>
            get proper end position based on span marker type
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeCleanup.AbstractCodeCleanerService.AnnotateNodeForTextSpans(Roslyn.Compilers.Common.CommonSyntaxNode,System.Collections.Generic.IEnumerable{Roslyn.Compilers.TextSpan},System.Threading.CancellationToken)">
            <summary>
            inject annotations to the node so that it can re-calculate spans for each code cleaners after each tree transformation
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeCleanup.AbstractCodeCleanerService.GetNonOverlappingSpans(Roslyn.Compilers.Common.CommonSyntaxNode,System.Collections.Generic.IEnumerable{Roslyn.Compilers.TextSpan},System.Threading.CancellationToken)">
            <summary>
            make sure annotations are positioned outside of any spans. if not, merge two adjacent spans to one
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeCleanup.AbstractCodeCleanerService.GetTokensAroundSpan(Roslyn.Compilers.Common.CommonSyntaxNode,Roslyn.Compilers.TextSpan,Roslyn.Compilers.Common.CommonSyntaxToken@,Roslyn.Compilers.Common.CommonSyntaxToken@,Roslyn.Compilers.Common.CommonSyntaxToken@,Roslyn.Compilers.Common.CommonSyntaxToken@)">
             <summary>
             retrieve 4 tokens around span like below.
            
             [previousToken][startToken][SPAN][endToken][nextToken]
             </summary>
        </member>
        <member name="M:Roslyn.Services.CodeCleanup.AbstractCodeCleanerService.GetSpansAlignedToTokens(Roslyn.Compilers.Common.CommonSyntaxNode,System.Collections.Generic.IEnumerable{Roslyn.Compilers.TextSpan},System.Threading.CancellationToken)">
            <summary>
            adjust provided spans to align to either token's start position or end position
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeCleanup.AbstractCodeCleanerService.FindTokenOnRightOfPosition(Roslyn.Compilers.Common.CommonSyntaxNode,System.Int32)">
            <summary>
            Find closest token (including one in structured trivia) right of given position
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeCleanup.AbstractCodeCleanerService.FindTokenOnLeftOfPosition(Roslyn.Compilers.Common.CommonSyntaxNode,System.Int32)">
            <summary>
            Find closest token (including one in structured trivia) left of given position
            </summary>
        </member>
        <member name="T:Roslyn.Services.CodeCleanup.AbstractCodeCleanerService.SpanMarkerType">
            <summary>
            enum that indicates type of span marker
            </summary>
        </member>
        <member name="F:Roslyn.Services.CodeCleanup.AbstractCodeCleanerService.SpanMarkerType.Normal">
            <summary>
            normal case
            </summary>
        </member>
        <member name="F:Roslyn.Services.CodeCleanup.AbstractCodeCleanerService.SpanMarkerType.BeginningOfFile">
            <summary>
            span starts from beginning of the tree
            </summary>
        </member>
        <member name="F:Roslyn.Services.CodeCleanup.AbstractCodeCleanerService.SpanMarkerType.EndOfFile">
            <summary>
            span ends to the end of the tree
            </summary>
        </member>
        <member name="T:Roslyn.Services.CodeCleanup.AbstractCodeCleanerService.SpanMarker">
            <summary>
            internal annotation type to mark span location in the tree
            </summary>
        </member>
        <member name="P:Roslyn.Services.CodeCleanup.AbstractCodeCleanerService.SpanMarker.Type">
            <summary>
            indicate current marker type
            </summary>
        </member>
        <member name="P:Roslyn.Services.CodeCleanup.AbstractCodeCleanerService.SpanMarker.OppositeMarkerType">
            <summary>
            indicate how to find the other side of span marker if it is missing
            </summary>
        </member>
        <member name="T:Roslyn.Services.CodeCleanup.CodeCleaner">
            <summary>
            static CodeCleaner class that provides default code cleaning behavior
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeCleanup.CodeCleaner.Cleanup(Roslyn.Services.IDocument,System.Collections.Generic.IEnumerable{Roslyn.Services.CodeCleanup.ICodeCleanupProvider},System.Threading.CancellationToken)">
            <summary>
            Clean up the whole document.
            Optionally you can provide your own options and code cleaners. otherwise, default will be used.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeCleanup.CodeCleaner.Cleanup(Roslyn.Services.IDocument,Roslyn.Compilers.SyntaxAnnotation,System.Collections.Generic.IEnumerable{Roslyn.Services.CodeCleanup.ICodeCleanupProvider},System.Threading.CancellationToken)">
            <summary>
            Clean up the document marked with the provided annotation.
            Optionally you can provide your own options and code cleaners. otherwise, default will be used.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeCleanup.CodeCleaner.Cleanup(Roslyn.Services.IDocument,Roslyn.Compilers.TextSpan,System.Collections.Generic.IEnumerable{Roslyn.Services.CodeCleanup.ICodeCleanupProvider},System.Threading.CancellationToken)">
            <summary>
            Clean up the provided span in the document
            Optionally you can provide your own options and code cleaners. otherwise, default will be used.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeCleanup.CodeCleaner.Cleanup(Roslyn.Services.IDocument,System.Collections.Generic.IEnumerable{Roslyn.Compilers.TextSpan},System.Collections.Generic.IEnumerable{Roslyn.Services.CodeCleanup.ICodeCleanupProvider},System.Threading.CancellationToken)">
            <summary>
            Clean up the provided spans in the document
            Optionally you can provide your own options and code cleaners. otherwise, default will be used.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CodeCleanup.CodeCleanupProviders.GetDefaultProviders(System.String)">
            <summary>
            return default code cleaners
            
            this can be modified and given to Cleanup method to provide different cleaners
            </summary>
        </member>
        <member name="T:Roslyn.Services.CodeCleanup.Providers.FormatCodeCleanupProvider">
            <summary>
            format code cleanup provider that uses default formatting options and rules.
            
            editor layer will have its own format code cleanup provider that uses editor's current formatting rules and options
            this shouldn't MEF exported.
            </summary>
        </member>
        <member name="T:Roslyn.Services.CodeCleanup.ExportCodeCleanupProvider">
            <summary>
            Specifies the exact type of the code cleanup exported
            </summary>
        </member>
        <member name="T:Roslyn.Services.CodeCleanup.Providers.SimpleCodeCleanupProvider">
            <summary>
            simple helper class that returns ICodeCleanup implementation
            </summary>
        </member>
        <member name="T:Roslyn.Services.Internal.Log.EtwLogger">
            <summary>
            A logger that publishes events to ETW using an EventSource
            </summary>
        </member>
        <member name="T:Roslyn.Services.Internal.Log.ILogger">
            <summary>
            logger interface actual logger should implements
            </summary>
        </member>
        <member name="M:Roslyn.Services.Internal.Log.ILogger.IsEnabled(Roslyn.Services.Internal.Log.FeatureId,Roslyn.Services.Internal.Log.FunctionId)">
            <summary>
            answer whether it is enabled or not for the specific feature and function id
            </summary>
        </member>
        <member name="M:Roslyn.Services.Internal.Log.ILogger.IsVerbose">
            <summary>
            answer whether it is in verbose mode or not
            </summary>
        </member>
        <member name="M:Roslyn.Services.Internal.Log.ILogger.Log(Roslyn.Services.Internal.Log.FeatureId,Roslyn.Services.Internal.Log.FunctionId,System.String)">
            <summary>
            log a specific event with context message
            </summary>
        </member>
        <member name="M:Roslyn.Services.Internal.Log.ILogger.LogBlock(Roslyn.Services.Internal.Log.FeatureId,Roslyn.Services.Internal.Log.FunctionId,System.String,System.Int32)">
            <summary>
            log a start and end pair with context message
            </summary>
        </member>
        <member name="T:Roslyn.Services.Internal.Log.EtwLogger.RoslynEtwLogBlock">
            <summary>
            This tracks the logged message. On instantiation, it logs 'Started block' with other event data.
            On dispose, it logs 'Ended block' with the same event data so we can track which block started and ended when looking at logs.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Internal.Log.EmptyLogBlock">
            <summary>
            no op log block
            </summary>
        </member>
        <member name="T:Roslyn.Services.Internal.Log.EmptyLogger">
            <summary>
            a logger that doesn't do anything
            </summary>
        </member>
        <member name="T:Roslyn.Services.Internal.Log.FeatureId">
            <summary>
            Enum to uniquely identify each feature
            </summary>
        </member>
        <member name="T:Roslyn.Services.Internal.Log.RoslynEventSource">
            <summary>
            This EventSource exposes our events to ETW.
            RoslynEventSource GUID is {bf965e67-c7fb-5c5b-d98f-cdf68f8154c2}
            
            When updating this class, use the following to also update Main\Source\Test\Performance\Log\RoslynEventSourceParser.cs:
            Main\Tools\Source\TraceParserGen\bin\Debug\TraceParserGen.exe Roslyn.Services.dll -eventsource:RoslynEventSource
            
            Use this command to register the ETW manifest on any machine where you need to decode events in xperf/etlstackbrowse:
            "\\clrmain\tools\managed\etw\eventRegister\bin\Debug\eventRegister.exe" Roslyn.Services.dll
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.FormattingRules.GetDefaultRules(System.String)">
            <summary>
            return default formatting rules
            
            this can be modified and given to Format method to provide different rules
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.IWorkspaceTaskSchedulerFactory">
            <summary>
            A factory that creates either sequential or parallel task schedulers.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.IWorkspaceTaskSchedulerFactory.CreateTaskScheduler(System.Threading.Tasks.TaskScheduler)">
            <summary>
            Creates a workspace task scheduler that schedules tasks to run in parallel.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.IWorkspaceTaskSchedulerFactory.CreateTaskQueue(System.Threading.Tasks.TaskScheduler)">
            <summary>
            Creates a workspace task scheduler that schedules task to run in sequence.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.IWorkspaceTaskScheduler">
            <summary>
            An abstraction for running tasks either in sequence or in parallel.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.IWorkspaceTaskScheduler.ScheduleTask(System.Action,System.String,System.Threading.CancellationToken)">
            <summary>
            Execute the task action on a thread owned by a task scheduler.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.IWorkspaceTaskScheduler.ScheduleTask``1(System.Func{``0},System.String,System.Threading.CancellationToken)">
            <summary>
            Execute the task function on a thread owned by a task scheduler and return the schedule
            task that can be used to wait for the result.
            </summary>
        </member>
        <member name="F:Roslyn.Services.Host.WorkspaceTaskSchedulerFactory.WorkspaceTaskQueue.gate">
            <summary>
            An object to synchronize reads/writes of all mutable fields of this class.
            </summary>
        </member>
        <member name="F:Roslyn.Services.Host.WorkspaceTaskSchedulerFactory.WorkspaceTaskScheduler.gate">
            <summary>
            An object to synchronize reads/writes of all mutable fields of this class.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.ITextFactoryService">
            <summary>
            A factory for creating IText instances.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Organizing.ISyntaxOrganizer.OrganizeNode(Roslyn.Compilers.Common.ISemanticModel,Roslyn.Compilers.Common.CommonSyntaxNode,System.Threading.CancellationToken)">
            <summary>
            organize given node
            </summary>
        </member>
        <member name="P:Roslyn.Services.Organizing.ISyntaxOrganizer.SyntaxNodeTypes">
            <summary>
            syntax node types this organizer is applicable to
            </summary>
        </member>
        <member name="M:Roslyn.Services.Organizing.SyntaxOrganizers.GetDefaultOrganizers(System.String)">
            <summary>
            return default syntax node organizers
            </summary>
        </member>
        <member name="M:Roslyn.Services.ProjectExtensions.CreateUniqueDocumentId(Roslyn.Services.IProject,System.String,System.Collections.Generic.IEnumerable{System.String})">
            <summary>
            Create a unique document id for the project based on the document name and optionally its logical folders.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ProjectExtensions.UpdateAssemblyName(Roslyn.Services.IProject,System.String)">
            <summary>
            Creates a new instance of this project updated to have the new assembly name.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ProjectExtensions.UpdateCompilationOptions(Roslyn.Services.IProject,Roslyn.Compilers.Common.CommonCompilationOptions)">
            <summary>
            Creates a new instance of this project updated to have the specified compilation options.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ProjectExtensions.UpdateParseOptions(Roslyn.Services.IProject,Roslyn.Compilers.Common.CommonParseOptions)">
            <summary>
            Creates a new instance of this project udpated to have the specified parse options.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ProjectExtensions.AddProjectReference(Roslyn.Services.IProject,Roslyn.Services.ProjectId)">
            <summary>
            Creates a new instance of this project updated to include the specified project reference.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ProjectExtensions.AddProjectReferences(Roslyn.Services.IProject,System.Collections.Generic.IEnumerable{Roslyn.Services.ProjectId})">
            <summary>
            Creates a new instance of this project updated to include the specified project references.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ProjectExtensions.RemoveProjectReference(Roslyn.Services.IProject,Roslyn.Services.ProjectId)">
            <summary>
            Creates a new instance of this project updated to no longer include the specified project reference.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ProjectExtensions.RemoveAllProjectReferences(Roslyn.Services.IProject)">
            <summary>
            Creates a new instance of this project updated to contain no project references.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ProjectExtensions.AddMetadataReference(Roslyn.Services.IProject,Roslyn.Compilers.MetadataReference)">
            <summary>
            Creates a new instance of this project updated to include the specified metadata reference.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ProjectExtensions.AddMetadataReferences(Roslyn.Services.IProject,System.Collections.Generic.IEnumerable{Roslyn.Compilers.MetadataReference})">
            <summary>
            Creates a new instance of this project updated to include the specified metadata references.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ProjectExtensions.RemoveMetadataReference(Roslyn.Services.IProject,Roslyn.Compilers.MetadataReference)">
            <summary>
            Creates a new instance of this project updated to no longer include the specified metadata reference.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ProjectExtensions.RemoveAllMetadataReferences(Roslyn.Services.IProject)">
            <summary>
            Creates a new instance of this project updated to no longer include any metadata references.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ProjectExtensions.AddDocument(Roslyn.Services.IProject,System.String,Roslyn.Compilers.IText,System.Collections.Generic.IEnumerable{System.String})">
            <summary>
            Creates a new document in a new instance of this project.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ProjectExtensions.AddDocument(Roslyn.Services.IProject,System.String,Roslyn.Compilers.IText,System.Collections.Generic.IEnumerable{System.String},Roslyn.Services.DocumentId@)">
            <summary>
            Creates a new instance of this project updated to include a new document instance defined by its name and text.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ProjectExtensions.AddDocument(Roslyn.Services.IProject,System.String,Roslyn.Compilers.IText,Roslyn.Services.DocumentId@)">
            <summary>
            Creates a new instance of this project updated to include a new document instance defined by its name and text.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ProjectExtensions.AddDocument(Roslyn.Services.IProject,System.String,System.String,System.Collections.Generic.IEnumerable{System.String})">
            <summary>
            Creates a new document in a new instance of this project.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ProjectExtensions.AddDocument(Roslyn.Services.IProject,System.String,System.String,Roslyn.Services.DocumentId@)">
            <summary>
            Creates a new instance of this project updated to include a new document instance defined by its name and text.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ProjectExtensions.AddDocument(Roslyn.Services.IProject,System.String,System.String,System.Collections.Generic.IEnumerable{System.String},Roslyn.Services.DocumentId@)">
            <summary>
            Creates a new instance of this project updated to include a new document instance defined by its name and text.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ProjectExtensions.AddDocument(Roslyn.Services.IProject,System.String,System.Collections.Generic.IEnumerable{System.String})">
            <summary>
            Creates a new document in a new instance of this project.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ProjectExtensions.AddDocument(Roslyn.Services.IProject,System.String,Roslyn.Services.DocumentId@)">
            <summary>
            Creates a new instance of this project updated to include a new document that will load its text from the specified file.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ProjectExtensions.AddDocument(Roslyn.Services.IProject,System.String,System.Collections.Generic.IEnumerable{System.String},Roslyn.Services.DocumentId@)">
            <summary>
            Creates a new instance of this project updated to include a new document that will load its text from the specified file.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ProjectExtensions.RemoveDocument(Roslyn.Services.IProject,Roslyn.Services.DocumentId)">
            <summary>
            Creates a new instance of this project updated to no longer include the specified document.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ProjectExtensions.UpdateFileResolver(Roslyn.Services.IProject,Roslyn.Compilers.FileResolver)">
            <summary>
            Creates a new instance of this project updated to include the specified metadata reference.
            </summary>
        </member>
        <member name="F:Roslyn.Services.Rename.ConflictEngine.ConflictingIdentifierTracker.currentIdentifiersInScope">
            <summary>
            The core data structure of the tracker. This is a dictionary of variable name to the
            current identifier tokens that are declaring variables. This should only ever be updated
            via the AddIdentifier and RemoveIdentifier helpers.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Rename.ConflictEngine.ConflictResolution">
            <summary>
            The result of the conflict engine. Once this object is returned from the engine, it is
            immutable.
            </summary>
        </member>
        <member name="F:Roslyn.Services.Rename.ConflictEngine.ConflictResolution.frozen">
            <summary>
            We want to guarantee immutability of this object once it is returned, but we use it to
            collect results while we're running.
            </summary>
        </member>
        <member name="P:Roslyn.Services.Rename.ConflictEngine.ConflictResolution.RelatedLocations">
            <summary>
            The list of all symbol locations that are referenced either by the original symbol or
            the renamed symbol. This includes both resolved and unresolved conflicts.
            </summary>
        </member>
        <member name="P:Roslyn.Services.Rename.ConflictEngine.ConflictResolution.BaseSolution">
            <summary>
            The base workspace snapshot that this conflict resolution can be applied to.
            </summary>
        </member>
        <member name="P:Roslyn.Services.Rename.ConflictEngine.ConflictResolution.ReplacementTextValid">
            <summary>
            Whether the text that was resolved with was even valid. This may be false if the
            identifier was not valid in some language that was involved in the rename.
            </summary>
        </member>
        <member name="P:Roslyn.Services.Rename.ConflictEngine.ConflictResolution.OriginalReplacementText">
            <summary>
            The original text that is the rename replacement.
            </summary>
        </member>
        <member name="P:Roslyn.Services.Rename.ConflictEngine.ConflictResolution.TextReplacements">
            <summary>
            The list of text replacements that must be performed to apply the rename.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Rename.ConflictEngine.ConflictResolver.AddDeclarationConflicts(Roslyn.Services.Rename.RenameLocationSet,Roslyn.Services.Rename.ConflictEngine.ConflictResolution,Roslyn.Services.Rename.ConflictEngine.LocationMapper,System.Threading.CancellationToken)">
            <summary>
            Computes an adds conflicts relating to declarations, which are independent of
            location-based checks. Examples of these types of conflicts include renaming a member to
            the same name as another member of a type: binding doesn't change (at least from the
            perspective of find all references), but we still need to track it.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Rename.ConflictEngine.LocationMapper">
             <summary>
             The conflict engine works by creating an "old" workspace snapshot and a "new" workspace
             snapshot, performs Find All References in both, and compares the result. The tricky part
             about this is unless the user just happens to be renaming the old identifier to a new
             identifier of the same length, locations are different. This class lets us map between
             these two workspace snapshots similar to a tracking span, but doesn't actually require
             buffers to be involved anywhere.
            
             Unlike tracking points, we have no concept of a tracking mode, since we only ever
             map points that are on the edges of spans or between spans. Thus, all operations are
             always invertible.
             </summary>
        </member>
        <member name="M:Roslyn.Services.Rename.ConflictEngine.LocationMapper.AddLocations(System.Collections.Generic.IList{Roslyn.Compilers.Common.CommonLocation},System.Collections.Generic.IList{Roslyn.Compilers.Common.CommonLocation})">
            <summary>
            Given locations in the "old" tree and "new" tree, stores them. Since these locations
            come from the rewrite, there is a 1:1 correspondence between them.
            </summary>
        </member>
        <member name="F:Roslyn.Services.Rename.ConflictEngine.RelatedLocationType.NoConflict">
            <summary>
            There was no conflict.
            </summary>
        </member>
        <member name="F:Roslyn.Services.Rename.ConflictEngine.RelatedLocationType.ResolvedReferenceConflict">
            <summary>
            A conflict was resolved at a location that references the symbol being renamed.
            </summary>
        </member>
        <member name="F:Roslyn.Services.Rename.ConflictEngine.RelatedLocationType.ResolvedNonReferenceConflict">
            <summary>
            A conflict was resolved in a piece of code that does not reference the symbol being
            renamed.
            </summary>
        </member>
        <member name="F:Roslyn.Services.Rename.ConflictEngine.RelatedLocationType.UnresolvedConflict">
            <summary>
            There was a conflict that could not be resolved.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Rename.ConflictEngine.SymbolResolutionVisitor">
            <summary>
            A helper class which contains the neccesarily logic to take a symbol from the old solution
            and map it forward to the equivalent symbol in the new solution.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Rename.ConflictEngine.SymbolResolutionVisitor.TryMapSimpleSymbol``1(``0,System.Boolean)">
            <summary>
            Maps a "simple" symbol through. Simple symbols can just be thought of things that are
            their own definitions, where we can just bind their definition in source and be done
            with it. We do this approach since it's possible this symbol is the thing being renamed,
            or perhaps a containing type, etc.
            </summary>
        </member>
        <member name="P:Roslyn.Services.Rename.IRenameConflictInformation.SyntaxTree">
            <summary>
            The tree that we must resolve conflicts in.
            </summary>
        </member>
        <member name="P:Roslyn.Services.Rename.IRenameConflictInformation.SemanticModel">
            <summary>
            The ISemanticModel for the SyntaxTree.
            </summary>
        </member>
        <member name="F:Roslyn.Services.Rename.ConflictEngine.TreeConflictInformation.replacements">
            <summary>
            A list of syntax nodes in the rewritten tree, and the annotations that match the
            resolved node in the resolved tree.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Rename.ConflictEngine.TreeReplacementCollector">
            <summary>
            Collects the textual edits that must be done to a syntax tree in order to perform the rename.
            </summary>
            <remarks>
            This class exists because we must perform a recursive rewrite of the tree. Since we know what
            nodes we're touching, there's no reason for us to go and do a full-blown tree diff. The only trick
            here is that when we're rewriting, we might make an edit for some leaf node and record it here,
            only to realize we later need to rewrite a parent node. So this collector dutifully collects both
            and will throw out the leaf node edit since it's covered by the larger edit.
            </remarks>
        </member>
        <member name="M:Roslyn.Services.Rename.ConflictEngine.TreeReplacementCollector.AddReplacement(Roslyn.Compilers.TextSpan,System.String)">
            <summary>
            Records an edit.
            </summary>
            <param name="textSpan">The span in the initially rewritten tree.</param>
            <param name="text">The text that should be there.</param>
        </member>
        <member name="M:Roslyn.Services.Rename.ConflictEngine.TreeReplacementCollector.ComputeFinalReplacementsForResult(Roslyn.Compilers.Common.CommonSyntaxTree,Roslyn.Compilers.Common.CommonSyntaxTree,Roslyn.Services.Rename.ConflictEngine.LocationMapper,Roslyn.Services.Rename.ConflictEngine.ConflictResolution,System.Threading.CancellationToken)">
            <summary>
            Takes the edits that must be made for this tree, and records them in the final result.
            </summary>
            <param name="oldTree">The original tree before the entire rename operation started. The spans
            put in the final result must be in this tree.</param>
            <param name="newTree">The tree after the initial rewrite. Note that our replacement spans
            are against this tree.</param>
            <param name="locationMapper">The LocationMapper for mapping between trees.</param>
            <param name="result">The result to add stuff to.</param>
            <param name="cancellationToken">A cancellationToken.</param>
        </member>
        <member name="M:Roslyn.Services.Rename.ConflictEngine.TreeReplacementCollector.TrimUnchangedWhitespace(Roslyn.Compilers.Common.CommonLocation,System.String)">
            <summary>
            Given a CommonLocation in source and the replacement text the span should be replaced with, trim off
            leading or trailing characters that are unchanged.
            </summary>
            <returns>A text replacement, or null if the replacement would be a no-op.</returns>
        </member>
        <member name="T:Roslyn.Services.Rename.RenameLocationSet">
            <summary>
            Holds the ILocations of a symbol that should be renamed, along with the symbol and ISolution
            for the set.
            </summary>
            <summary>
            A helper class that contains some of the methods and filters that must be used when
            processing the raw results from the FindReferences API.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Rename.RenameLocationSet.Find(Roslyn.Compilers.Common.ISymbol,Roslyn.Services.ISolution,System.Threading.CancellationToken)">
            <summary>
            Synchronously find the locations that need to be renamed.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Rename.RenameLocationSet.GetNoChangeConflictResolution(Roslyn.Services.ISolution)">
            <summary>
            Returns a ConflictResolution for this set of rename locations that expresses what would
            happen if we didn't actually rename anything at all.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Rename.RenameLocationSet.AsynchronousSetSource">
            <summary>
            A class that aggregates the results of an asynchronous find references. The aggregation
            is done on a per-document level, so it can provide a Task{RenameLocationSet} for a
            single document or for the entire solution.
            </summary>
        </member>
        <member name="T:Roslyn.Services.FindReferences.IFindReferencesProgress">
            <summary>
            Reports the progress of the FindReferences operation.  Note: these methods may be called on
            any thread.
            </summary>
        </member>
        <member name="F:Roslyn.Services.Rename.RenameLocationSet.AsynchronousSetSource.gate">
            <summary>
            This gate guards the non-thread-safe fields in this class, namely the four after it
            here.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Rename.RenameLocationSet.AsynchronousSetSource.CompleteSourceForDocument(Roslyn.Services.IDocument)">
            <summary>
            Completes a per-document-locations task for the given document. This method is
            idempotent.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Rename.RenameLocationSet.ReferenceProcessing.GetRenamableSymbol(Roslyn.Services.IDocument,System.Int32,System.Threading.CancellationToken)">
            <summary>
            Given a symbol in a document, returns the "right" symbol that should be renamed in
            the case the name binds to things like aliases _and_ the underlying type at once.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Rename.RenameLocationSet.ReferenceProcessing.FindDefinitionSymbol(Roslyn.Compilers.Common.ISymbol,Roslyn.Services.ISolution,System.Threading.CancellationToken)">
            <summary>
            Given a symbol, finds the symbol that actually defines the name that we're using.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Rename.RenameLocationSet.ReferenceProcessing.GetRenamableDefinitionLocations(Roslyn.Services.ISolution,Roslyn.Compilers.Common.ISymbol,Roslyn.Compilers.Common.ISymbol,System.Threading.CancellationToken)">
            <summary>
            Given a ISymbol, returns the renamable locations for a given symbol.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Extensions.ISymbolExtensions.IsAccessibleWithin(Roslyn.Compilers.Common.ISymbol,Roslyn.Compilers.Common.ISymbol,Roslyn.Compilers.Common.ITypeSymbol)">
            <summary>
            Checks if 'symbol' is accessible from within 'within'.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Extensions.ISymbolExtensions.IsAccessibleWithin(Roslyn.Compilers.Common.ISymbol,Roslyn.Compilers.Common.IAssemblySymbol,Roslyn.Compilers.Common.ITypeSymbol)">
            <summary>
            Checks if 'symbol' is accessible from within assembly 'within'.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Extensions.ISymbolExtensions.IsAccessibleWithin(Roslyn.Compilers.Common.ISymbol,Roslyn.Compilers.Common.INamedTypeSymbol,Roslyn.Compilers.Common.ITypeSymbol)">
            <summary>
            Checks if 'symbol' is accessible from within name type 'within', with an optional
            qualifier of type "throughTypeOpt".
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Extensions.ISymbolExtensions.IsSymbolAccessible(Roslyn.Compilers.Common.ISymbol,Roslyn.Compilers.Common.INamedTypeSymbol,Roslyn.Compilers.Common.ITypeSymbol,System.Boolean@)">
            <summary>
            Checks if 'symbol' is accessible from within assembly 'within', with an qualifier of
            type "throughTypeOpt". Sets "failedThroughTypeCheck" to true if it failed the "through
            type" check.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Extensions.ISymbolExtensions.IsSymbolAccessibleCore(Roslyn.Compilers.Common.ISymbol,Roslyn.Compilers.Common.ISymbol,Roslyn.Compilers.Common.ITypeSymbol,System.Boolean@)">
            <summary>
            Checks if 'symbol' is accessible from within 'within', which must be a INamedTypeSymbol
            or an IAssemblySymbol.  If 'symbol' is accessed off of an expression then
            'throughTypeOpt' is the type of that expression. This is needed to properly do protected
            access checks. Sets "failedThroughTypeCheck" to true if this protected check failed.
            
            NOTE(cyrusn): I expect this function to be called a lot.  As such, I do not do any memory
            allocations in the function itself (including not making any iterators).  This does mean
            that certain helper functions that we'd like to call are inlined in this method to
            prevent the overhead of returning collections or enumerators.  
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Extensions.ISymbolExtensions.IsUnsafe(Roslyn.Compilers.Common.ISymbol)">
            <summary>
            Returns true if this symbol contains anything unsafe within it.  for example
            List&lt;int*&gt; is unsafe, as it "int* Foo { get; }"
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Extensions.ISymbolExtensions.IsInaccessibleLocal(Roslyn.Compilers.Common.ISymbol,System.Int32)">
            <returns>
            Returns true if symbol is a local variable and its declaring syntax node is 
            after the current position, false otherwise (including for non-local symbols)
            </returns>
        </member>
        <member name="M:Roslyn.Services.Shared.Extensions.ISymbolExtensions.IsEditorBrowsable(Roslyn.Compilers.Common.ISymbol,System.Boolean,Roslyn.Compilers.Common.CommonCompilation,Roslyn.Compilers.Common.IMethodSymbol,System.Collections.Generic.List{Roslyn.Compilers.Common.IMethodSymbol},System.Collections.Generic.List{Roslyn.Compilers.Common.IMethodSymbol},System.Collections.Generic.List{Roslyn.Compilers.Common.IMethodSymbol})">
            <summary>
            Checks a given symbol for browsability based on its declaration location, attributes 
            explicitly limiting browsability, and whether showing of advanced members is enabled. 
            The optional attribute constructor parameters may be used to specify the symbols of the
            constructors of the various browsability limiting attributes because finding these 
            repeatedly over a large list of symbols can be slow. If providing these constructor 
            symbols, they should be in the format provided by 
            EditorBrowsableHelpers.GetSpecial*AttributeConstructor(). If these are not provided,
            they will be found in the compilation.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Extensions.ITypeSymbolExtensions.FindImplementationsForInterfaceMember(Roslyn.Compilers.Common.ITypeSymbol,Roslyn.Compilers.Common.ISymbol,Roslyn.Services.ILanguageServiceProviderFactory,System.Threading.CancellationToken)">
            <summary>
            Returns the corresponding symbol in this type or a base type that implements 
            interfaceMember (either implicitly or explicitly), or null if no such symbol exists
            (which might be either because this type doesn't implement the container of
            interfaceMember, or this type doesn't supply a member that successfully implements
            interfaceMember).
            </summary>
        </member>
        <member name="P:Roslyn.Services.PatternMatch.CamelCaseWeight">
            <summary>
            The weight of a CamelCase match. A higher number indicates a more accurate match.
            </summary>
        </member>
        <member name="P:Roslyn.Services.PatternMatch.IsCaseSensitive">
            <summary>
            True if this was a case sensitive match.
            </summary>
        </member>
        <member name="P:Roslyn.Services.PatternMatch.Kind">
            <summary>
            The type of match that occured.
            </summary>
        </member>
        <member name="T:Roslyn.Services.PatternMatchKind">
            <summary>
            Note(cyrusn): this enum is ordered from strongest match type to weakest match type.
            </summary>
        </member>
        <member name="F:Roslyn.Services.PatternMatchKind.Exact">
            <summary>
            The candidate string matched the pattern exactly.
            </summary>
        </member>
        <member name="F:Roslyn.Services.PatternMatchKind.Prefix">
            <summary>
            The pattern was a prefix of the candidate string.
            </summary>
        </member>
        <member name="F:Roslyn.Services.PatternMatchKind.Substring">
            <summary>
            The pattern was a substring of the candidate string, but in a way that wasn't a CamelCase match.
            </summary>
        </member>
        <member name="F:Roslyn.Services.PatternMatchKind.CamelCase">
            <summary>
            The pattern matched the CamelCased candidate string.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Organizing.IOrganizingService">
            <summary>
            internal interface used to use language specific service from common service layer
            </summary>
        </member>
        <member name="M:Roslyn.Services.Organizing.IOrganizingService.GetDefaultOrganizers">
            <summary>
            return default organizers
            </summary>
        </member>
        <member name="M:Roslyn.Services.Organizing.IOrganizingService.Organize(Roslyn.Services.IDocument,System.Collections.Generic.IEnumerable{Roslyn.Services.Organizing.ISyntaxOrganizer},System.Threading.CancellationToken)">
            <summary>
            Organize document
            </summary>
        </member>
        <member name="P:Roslyn.Services.Shared.Utilities.IFileSystemDiscoveryService.CurrentDirectory">
            <summary>
            Gets the current directory.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Utilities.EditorBrowsableHelpers.GetSpecialEditorBrowsableAttributeConstructor(Roslyn.Compilers.Common.CommonCompilation)">
            <summary>
            Finds the constructor which takes exactly one argument, which must be of type EditorBrowsableState.
            It does not require that the EditorBrowsableAttribute and EditorBrowsableState types be those
            shipped by Microsoft, but it does demand the types found follow the expected pattern. If at any
            point that pattern appears to be violated, return null to indicate that an appropriate constructor
            could not be found.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Utilities.EditorBrowsableHelpers.GetSpecialTypeLibAttributeConstructorsWorker(Roslyn.Compilers.Common.CommonCompilation,System.String,System.String)">
            <summary>
            The TypeLib*Attribute classes that accept TypeLib*Flags with FHidden as an option all have two constructors,
            one accepting a TypeLib*Flags and the other a short. This methods gets those two constructor symbols for any
            of these attribute classes. It does not require that the either of these types be those shipped by Microsoft,
            but it does demand the types found follow the expected pattern. If at any point that pattern appears to be
            violated, return an empty enumerable to indicate that no appropriate constructors were found.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Utilities.FindTokenHelper.FindTokenOnRightOfPosition``1(Roslyn.Compilers.Common.CommonSyntaxNode,System.Int32,System.Func{Roslyn.Compilers.Common.CommonSyntaxTriviaList,System.Int32,Roslyn.Compilers.Common.CommonSyntaxToken},System.Boolean,System.Boolean,System.Boolean)">
            <summary>
            If the position is inside of token, return that token; otherwise, return the token to the right.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Utilities.FindTokenHelper.FindTokenOnLeftOfPosition``1(Roslyn.Compilers.Common.CommonSyntaxNode,System.Int32,System.Func{Roslyn.Compilers.Common.CommonSyntaxTriviaList,System.Int32,Roslyn.Compilers.Common.CommonSyntaxToken},System.Boolean,System.Boolean,System.Boolean)">
            <summary>
            If the position is inside of token, return that token; otherwise, return the token to the left.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Utilities.FindTokenHelper.FindSkippedTokenBackward(System.Collections.Generic.IEnumerable{Roslyn.Compilers.Common.CommonSyntaxToken},System.Int32)">
            <summary>
            Look inside a trivia list for a skipped token that contains the given position.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Utilities.FindTokenHelper.FindSkippedTokenForward(System.Collections.Generic.IEnumerable{Roslyn.Compilers.Common.CommonSyntaxToken},System.Int32)">
            <summary>
            Look inside a trivia list for a skipped token that contains the given position.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Shared.Utilities.TaskSet">
            <summary>
            Represents an unordered set of tasks
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Utilities.TaskSet.Run(System.Action{Roslyn.Services.Shared.Utilities.ITaskSet},System.Threading.CancellationToken)">
            <summary>
            Starts a task that completes when the initial action and all secondary actions are complete.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Utilities.TaskSet.Run``1(System.Action{Roslyn.Services.Shared.Utilities.ITaskSet},System.Func{``0},System.Threading.CancellationToken)">
            <summary>
            Starts a task that completes when the initial action and all secondary actions are complete.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Utilities.TaskSet.Run(System.Func{Roslyn.Services.Shared.Utilities.ITaskSet,System.Threading.Tasks.Task},System.Threading.CancellationToken)">
            <summary>
            Starts a task that completes when the initial action and all secondary actions are complete.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Utilities.TaskSet.Run``1(System.Func{Roslyn.Services.Shared.Utilities.ITaskSet,System.Threading.Tasks.Task},System.Func{``0},System.Threading.CancellationToken)">
            <summary>
            Starts a task that completes when the initial action and all secondary actions are complete.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SolutionExtensions.AddProject(Roslyn.Services.ISolution,System.String,System.String,System.String)">
            <summary>
            Creates a new project in a new instance of this solution.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SolutionExtensions.AddProject(Roslyn.Services.ISolution,System.String,System.String,System.String,Roslyn.Services.ProjectId@)">
            <summary>
            Create a new solution instance that includes a project with the specified language and names.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SolutionExtensions.CreateUniqueProjectId(Roslyn.Services.ISolution,System.String)">
            <summary>
            Creates a unique project id for this solution based on the project name.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SolutionExtensions.AddCSharpProject(Roslyn.Services.ISolution,System.String,System.String,Roslyn.Services.ProjectId@)">
            <summary>
            Create a new solution instance that includes a CSharp project with the specified names.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SolutionExtensions.AddCSharpProject(Roslyn.Services.ISolution,Roslyn.Services.ProjectId,System.String,System.String)">
            <summary>
            Create a new solution instance that includes a CSharp project with the specified names.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SolutionExtensions.AddCSharpProject(Roslyn.Services.ISolution,System.String,System.String)">
            <summary>
            Create a new CSharp project in a new instance of this solution.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SolutionExtensions.AddVisualBasicProject(Roslyn.Services.ISolution,System.String,System.String,Roslyn.Services.ProjectId@)">
            <summary>
            Create a new solution instance that includes a Visual Basic project with the specified names.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SolutionExtensions.AddVisualBasicProject(Roslyn.Services.ISolution,Roslyn.Services.ProjectId,System.String,System.String)">
            <summary>
            Create a new solution instance that includes a Visual Basic project with the specified names.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SolutionExtensions.AddVisualBasicProject(Roslyn.Services.ISolution,System.String,System.String)">
            <summary>
            Create a new Visual Basic project in a new instance of this solution.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SolutionExtensions.AddDocument(Roslyn.Services.ISolution,Roslyn.Services.ProjectId,System.String,Roslyn.Compilers.IText,System.Collections.Generic.IEnumerable{System.String})">
            <summary>
            Creates a new document in a new instance of this solution.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SolutionExtensions.AddDocument(Roslyn.Services.ISolution,Roslyn.Services.ProjectId,System.String,Roslyn.Compilers.IText,System.Collections.Generic.IEnumerable{System.String},Roslyn.Services.DocumentId@)">
            <summary>
            Creates a new solution instance with the project specified updated to include a new
            document instance defined by its name and text.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SolutionExtensions.AddDocument(Roslyn.Services.ISolution,Roslyn.Services.ProjectId,System.String,Roslyn.Compilers.IText,Roslyn.Services.DocumentId@)">
            <summary>
            Creates a new solution instance with the project specified updated to include a new
            document instance defined by its name and text.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SolutionExtensions.AddDocument(Roslyn.Services.ISolution,Roslyn.Services.ProjectId,System.String,System.String,System.Collections.Generic.IEnumerable{System.String})">
            <summary>
            Creates a new document in a new instance of this solution.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SolutionExtensions.AddDocument(Roslyn.Services.ISolution,Roslyn.Services.ProjectId,System.String,System.String,System.Collections.Generic.IEnumerable{System.String},Roslyn.Services.DocumentId@)">
            <summary>
            Creates a new solution instance with the project specified updated to include a new
            document instance defined by its name and text.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SolutionExtensions.AddDocument(Roslyn.Services.ISolution,Roslyn.Services.ProjectId,System.String,System.String,Roslyn.Services.DocumentId@)">
            <summary>
            Creates a new solution instance with the project specified updated to include a new
            document instance defined by its name and text.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SolutionExtensions.AddDocument(Roslyn.Services.ISolution,Roslyn.Services.ProjectId,System.String,System.Collections.Generic.IEnumerable{System.String})">
            <summary>
            Creates a new solution instance with the project specified updated to include a new
            document that will load its text from the specified file.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SolutionExtensions.AddDocument(Roslyn.Services.ISolution,Roslyn.Services.ProjectId,System.String,System.Collections.Generic.IEnumerable{System.String},Roslyn.Services.DocumentId@)">
            <summary>
            Creates a new solution instance with the project specified updated to include a new
            document that will load its text from the specified file.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SolutionExtensions.AddDocument(Roslyn.Services.ISolution,Roslyn.Services.ProjectId,System.String,Roslyn.Services.DocumentId@)">
            <summary>
            Creates a new solution instance with the project specified updated to include a new
            document that will load its text from the specified file.
            </summary>
        </member>
        <member name="T:Roslyn.Services.PreservationMode">
            <summary>
            The mode in which value is preserved.
            </summary>
        </member>
        <member name="F:Roslyn.Services.PreservationMode.PreserveValue">
            <summary>
            The value is guaranteed to have the same contents across multiple accesses.
            </summary>
        </member>
        <member name="F:Roslyn.Services.PreservationMode.PreserveIdentity">
            <summary>
            The value is guaranteed to the same instance across multiple accesses.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.CaseCorrection.ICaseCorrectionService.CaseCorrect(Roslyn.Services.IDocument,System.Collections.Generic.IEnumerable{Roslyn.Compilers.TextSpan},System.Threading.CancellationToken)">
            <summary>
            Case corrects all names found in the spans in the provided document.
            </summary>
        </member>
        <member name="M:Roslyn.Services.MetadataAsSource.IMetadataAsSourceService.GenerateSyntax(Roslyn.Compilers.Common.ISymbol)">
            <summary>
            Generates a syntax tree for the public, protected, and protected-or-internal interface
            of which the given ISymbol is or is a part of.  The resulting syntax tree is not
            formatted.
            </summary>
            <param name="symbol">The symbol whose interface to generate source for</param>
        </member>
        <member name="M:Roslyn.Services.MetadataAsSource.IMetadataAsSourceService.AddSourceTo(Roslyn.Services.IDocument,Roslyn.Compilers.Common.ISymbol,System.Threading.CancellationToken)">
            <summary>
            Generates formatted source code containing general information about the symbol's
            containing assembly, and the public, protected, and protected-or-internal interface of
            which the given ISymbol is or is a part of into the given document
            </summary>
            <param name="document">The document to generate source into</param>
            <param name="symbol">The symbol whose interface to generate source for</param>
            <param name="cancellationToken">To cancel document operations</param>
            <returns>The updated document</returns>
        </member>
        <member name="M:Roslyn.Services.MetadataAsSource.AbstractMetadataAsSourceService.AddAssemblyInfoRegion(Roslyn.Services.IDocument,Roslyn.Compilers.Common.ISymbol,System.Threading.CancellationToken)">
            <summary>
            Prepends a region directive at the top of the document with a name containing
            information about the assembly and a comment inside containing the path to the
            referenced assembly.  The containing assembly may not have a path on disk, in which case
            a string similar to "location unknown" will be placed in the comment inside the region
            instead of the path.
            </summary>
        </member>
        <member name="T:Roslyn.Services.MetadataAsSource.MetadataAsSourceHelpers">
            <summary>
            Helpers shared by both the text service and the editor service
            </summary>
        </member>
        <member name="M:Roslyn.Services.TextSpanExtensions.ToNormalizedSpans(System.Collections.Generic.IEnumerable{Roslyn.Compilers.TextSpan})">
            <summary>
            merge provided spans to each distinct group of spans in ascending order
            </summary>
        </member>
        <member name="T:Roslyn.Utilities.LinkedHashQueue`1">
            <summary>
            A queue that will only allow one instance of an object inside of it at a time.  When an
            object is enqueued that is already in the list, it is removed from its location and placed
            at the end of the queue.  These aspects make the queue useful for LRU caches.
            
            This class is not threadsafe.  If you need it to be, wrap it within your own lock.
            </summary>
        </member>
        <member name="M:Roslyn.Utilities.LinkedHashQueue`1.Enqueue(`0)">
            <summary>
            Adds this item (or moves it if it's already in the queue) to the end.  If the item is not
            in the list, 'true' is returned, otherwise 'false'.
            </summary>
        </member>
        <member name="T:Roslyn.Utilities.ObjectPool`1">
            <summary>
            Generic implementation of object pooling pattern with predefined pool size limit. The main
            purpose is that limited number of frequently used objects can be kept in the pool for
            further recycling.
            
            Notes: 
            1) it is not the goal to keep all returned objects. Pool is not meant for storage. If there
               is no space in the pool, extra returned objects will be dropped.
            
            2) it is implied that if object was obtained from a pool, the caller will return it back in
               relatively short time. Keeping checked out objects for long durations is ok, but 
               reduces usefulness of pooling.
            
            Not returning objects to the pool in not detrimental to the pool's work, but is a bad practice. 
            Rationale: 
               If there is no intent for reusing the object, do not use pool - just use "new". 
            </summary>
        </member>
        <member name="M:Roslyn.Utilities.ObjectPool`1.Allocate">
            <summary>
            Produces an instance.
            </summary>
            <remarks>
            Search strategy is a simple linear probing which is chosen for it cache-friendliness.
            Note that Free will try to store recycled objects close to the start thus statistically 
            reducing how far we will typically search.
            </remarks>
        </member>
        <member name="M:Roslyn.Utilities.ObjectPool`1.Free(`0)">
            <summary>
            Returns objects to the pool.
            </summary>
            <remarks>
            Search strategy is a simple linear probing which is chosen for it cache-friendliness.
            Note that Free will try to store recycled objects close to the start thus statistically 
            reducing how far we will typically search in Allocate.
            </remarks>
        </member>
        <member name="T:Roslyn.Utilities.ComputedValueSource`2">
            <summary>
            A retainer that computes its value from a retained value and a computation function.
            The value is not stored.
            </summary>
        </member>
        <member name="T:Roslyn.Utilities.ValueSource`1">
            <summary>
            A base class for implementations of IValueSource. 
            </summary>
            <typeparam name="T"></typeparam>
            <remarks>
            This class implements HasValue based on TryGetValue.
            </remarks>
        </member>
        <member name="T:Roslyn.Services.Host.IValueSource`1">
            <summary>
            A value source abstracts the source of a value that be accessed either synchronously or
            asynchronously. The value may be constant, computed once and stored or computed each time it
            is accessed. Stored values might be held as strong references or weak references.
            </summary>
            <typeparam name="T"></typeparam>
        </member>
        <member name="M:Roslyn.Services.Host.IValueSource`1.TryGetValue(`0@)">
            <summary>
            Gets the value if it is already computed and/or the reference is still available.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.IValueSource`1.GetValue(System.Threading.CancellationToken)">
            <summary>
            Get the value, computing it if necessary.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.IValueSource`1.GetValueAsync(System.Threading.CancellationToken)">
            <summary>
            Gets the value asynchronously, computing it if necessary.
            </summary>
        </member>
        <member name="P:Roslyn.Services.Host.IValueSource`1.HasValue">
            <summary>
            True if the value is already computed and the reference is still available.
            </summary>
        </member>
        <member name="T:Roslyn.Services.DocumentId">
            <summary>
            An identifier that can be used to retrieve the same IDocument across versions of the
            workspace.
            </summary>
        </member>
        <member name="M:Roslyn.Services.DocumentId.CreateNewId(Roslyn.Services.ProjectId,System.String)">
            <summary>
            Creates a new DocumentId instance.
            </summary>
            <param name="projectId">The project id this document id is relative to.</param>
            <param name="debugName">An optional name to make this id eaiser to recognize while debugging.</param>
        </member>
        <member name="T:Roslyn.Services.DocumentInfo">
            <summary>
            A class that represents all the arguments necessary to create a new document instance.
            </summary>
        </member>
        <member name="T:Roslyn.Services.IDocumentInfo">
            <summary>
            Used by HostWorkspace to access information about a source document. This data is read once
            and is expected to be the state of the document when it is first loaded or declared, except
            for Loader which always returns the current source text as stored on disk.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IDocumentInfo.Id">
            <summary>
            The unique Id for the document.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IDocumentInfo.Version">
            <summary>
            The version of the document's text. This may be null if no version is known.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IDocumentInfo.Folders">
            <summary>
            The list of nested folders describing where the document logically sits with respect to
            other documents. The folders may not match the filename.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IDocumentInfo.Name">
            <summary>
            The name of the document. It may be different than the filename.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IDocumentInfo.SourceCodeKind">
            <summary>
            The source code kind of the document.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IDocumentInfo.FilePath">
            <summary>
            The path to the document file or null if there is no document file.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IDocumentInfo.Loader">
            <summary>
            The loader that will load the document from storage.
            </summary>
        </member>
        <member name="T:Roslyn.Services.InteractiveHostOptions">
            <summary>
            Settings that affect InteractiveHost process and initialization.
            </summary>
        </member>
        <member name="P:Roslyn.Services.InteractiveHostOptions.InitializationFile">
            <summary>
            Optional path to the .rsp file to process when initializing context of the process.
            </summary>
        </member>
        <member name="T:Roslyn.Services.CodeGeneration.CodeGenerationOptions">
            <summary>
            Options for controlling the code produced by the ICodeGenerationService.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CodeGeneration.CodeGenerationOptions.ContextLocation">
            <summary>
            A location used to determine the best place to generate a member.  This is only used for
            determining which part of a partial type to generate in.  If a type only has one part, or
            an API is used that specifies the type, then this is not used, .  A part is preferred if
            it surrounds this context location. If no part surrounds this location then a part is
            preferred if it comes from the same CommonSyntaxTree as this location.  If there is no
            such part, then any part may be used for generation.
            
            This option is not necessary if 'AfterThisLocation' or 'BeforeThisLocation' are
            provided.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CodeGeneration.CodeGenerationOptions.AfterThisLocation">
            <summary>
            A hint to the code generation service to specify where the generated code should be
            placed.  Code will be generated after this location if the location is valid in the type
            or symbol being generated into, and it is possible to generate the code after it.
            
            If this option is provided, neither 'ContextLocation' nor 'BeforeThisLocation' are
            needed.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CodeGeneration.CodeGenerationOptions.BeforeThisLocation">
            <summary>
            A hint to the code generation service to specify where the generated code should be
            placed.  Code will be generated before this location if the location is valid in the type
            or symbol being generated into, and it is possible to generate the code after it. 
            
            If this option is provided, neither 'ContextLocation' nor 'AfterThisLocation' are
            needed.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CodeGeneration.CodeGenerationOptions.AddImports">
            <summary>
            True if the code generation service should try to automatically add imports to the file
            for any generated code.  Defaults to true.  Not used when generating directly into a
            declaration.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CodeGeneration.CodeGenerationOptions.PlaceSystemNamespaceFirst">
            <summary>
            True if, when adding a System import, the import should be placed above non-System
            imports.  Defaults to true.  Only used if AddImports is true.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CodeGeneration.CodeGenerationOptions.AdditionalImports">
            <summary>
            Contains additional imports to be automatically added.  This is useful for adding
            imports that are part of a list of statements.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CodeGeneration.CodeGenerationOptions.GenerateMembers">
            <summary>
            True if members of a symbol should also be generated along with the declaration.  If
            false, only the symbol's declaration will be generated.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CodeGeneration.CodeGenerationOptions.MergeNestedNamespaces">
            <summary>
            True if the code generator should merge namespaces which only contain other namespaces
            into a single declaration with a dotted name.  False if the nesting should be preserved
            and each namespace declaration should be nested and should only have a single non-dotted
            name.
            
            Merging can only occur if the namespace only contains a single member that is also a
            namespace.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CodeGeneration.CodeGenerationOptions.MergeAttributes">
            <summary>
            True if the code generation should put multiple attributes in a single attribute
            declaration, or if should have a seperate attribute declaration for each attribute.  For
            example, in C# setting this to True this would produce "[Foo, Bar]" while setting it to
            False would produce "[Foo][Bar]"
            </summary>
        </member>
        <member name="P:Roslyn.Services.CodeGeneration.CodeGenerationOptions.GenerateDefaultAccessibility">
            <summary>
            True if the code generator should always generate accessibility modifiers, even if they
            are the same as the defaults for that symbol.  For example, a private field in C# does
            not need its accessibility specified as it will be private by default.  However, if this
            option is set to true 'private' will still be generated.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CodeGeneration.CodeGenerationOptions.GenerateMethodBodies">
            <summary>
            True if the code generator should generate empty bodies for methods along with the
            method declaration.  If false, only method declarations will be generated.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.NormalizedTextSpanCollection.#ctor">
            <summary>
            Initializes a new instance of <see cref="T:Roslyn.Services.Shared.NormalizedTextSpanCollection"/> that is
            empty.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.NormalizedTextSpanCollection.#ctor(Roslyn.Compilers.TextSpan)">
            <summary>
            Initializes a new instance of <see cref="T:Roslyn.Services.Shared.NormalizedTextSpanCollection"/> that contains the specified span.
            </summary>
            <param name="span">TextSpan contained by the span set.</param>
        </member>
        <member name="M:Roslyn.Services.Shared.NormalizedTextSpanCollection.#ctor(System.Collections.Generic.IEnumerable{Roslyn.Compilers.TextSpan})">
            <summary>
            Initializes a new instance of <see cref="T:Roslyn.Services.Shared.NormalizedTextSpanCollection"/> that contains the specified list of spans.
            </summary>
            <param name="spans">The spans to be added.</param>
            <remarks>
            <para>The list of spans will be sorted and normalized (overlapping and adjoining spans will be combined).</para>
            <para>This constructor runs in O(N log N) time, where N = spans.Count.</para></remarks>
            <exception cref="T:System.ArgumentNullException"><paramref name="spans"/> is null.</exception>
        </member>
        <member name="M:Roslyn.Services.Shared.NormalizedTextSpanCollection.Union(Roslyn.Services.Shared.NormalizedTextSpanCollection,Roslyn.Services.Shared.NormalizedTextSpanCollection)">
            <summary>
            Finds the union of two span sets.
            </summary>
            <param name="left">
            The first span set.
            </param>
            <param name="right">
            The second span set.
            </param>
            <returns>
            The new span set that corresponds to the union of <paramref name="left"/> and <paramref name="right"/>.
            </returns>
            <remarks>This operator runs in O(N+M) time where N = left.Count, M = right.Count.</remarks>
            <exception cref="T:System.ArgumentNullException">Either <paramref name="left"/> or <paramref name="right"/> is null.</exception>
        </member>
        <member name="M:Roslyn.Services.Shared.NormalizedTextSpanCollection.Overlap(Roslyn.Services.Shared.NormalizedTextSpanCollection,Roslyn.Services.Shared.NormalizedTextSpanCollection)">
            <summary>
            Findx the overlap of two span sets.
            </summary>
            <param name="left">The first span set.</param>
            <param name="right">The second span set.</param>
            <returns>The new span set that corresponds to the overlap of <paramref name="left"/> and <paramref name="right"/>.</returns>
            <remarks>This operator runs in O(N+M) time where N = left.Count, M = right.Count.</remarks>
            <exception cref="T:System.ArgumentNullException"><paramref name="left"/> or <paramref name="right"/> is null.</exception>
        </member>
        <member name="M:Roslyn.Services.Shared.NormalizedTextSpanCollection.Intersection(Roslyn.Services.Shared.NormalizedTextSpanCollection,Roslyn.Services.Shared.NormalizedTextSpanCollection)">
            <summary>
            Finds the intersection of two span sets.
            </summary>
            <param name="left">The first span set.</param>
            <param name="right">The second span set.</param>
            <returns>The new span set that corresponds to the intersection of <paramref name="left"/> and <paramref name="right"/>.</returns>
            <remarks>This operator runs in O(N+M) time where N = left.Count, M = right.Count.</remarks>
            <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is null.</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is null.</exception>
        </member>
        <member name="M:Roslyn.Services.Shared.NormalizedTextSpanCollection.Difference(Roslyn.Services.Shared.NormalizedTextSpanCollection,Roslyn.Services.Shared.NormalizedTextSpanCollection)">
            <summary>
            Finds the difference between two sets. The difference is defined as everything in the first span set that is not in the second span set.
            </summary>
            <param name="left">The first span set.</param>
            <param name="right">The second span set.</param>
            <returns>The new span set that corresponds to the difference between <paramref name="left"/> and <paramref name="right"/>.</returns>
            <remarks>
            Empty spans in the second set do not affect the first set at all. This method returns empty spans in the first set that are not contained by any set in
            the second set.
            </remarks>
            <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is null.</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is null.</exception>
        </member>
        <member name="M:Roslyn.Services.Shared.NormalizedTextSpanCollection.op_Equality(Roslyn.Services.Shared.NormalizedTextSpanCollection,Roslyn.Services.Shared.NormalizedTextSpanCollection)">
            <summary>
            Determines whether two span sets are the same. 
            </summary>
            <param name="left">The first set.</param>
            <param name="right">The second set.</param>
            <returns><c>true</c> if the two sets are equivalent, otherwise <c>false</c>.</returns>
        </member>
        <member name="M:Roslyn.Services.Shared.NormalizedTextSpanCollection.op_Inequality(Roslyn.Services.Shared.NormalizedTextSpanCollection,Roslyn.Services.Shared.NormalizedTextSpanCollection)">
            <summary>
            Determines whether two span sets are not the same.
            </summary>
            <param name="left">The first set.</param>
            <param name="right">The second set.</param>
            <returns><c>true</c> if the two sets are not equivalent, otherwise <c>false</c>.</returns>
        </member>
        <member name="M:Roslyn.Services.Shared.NormalizedTextSpanCollection.OverlapsWith(Roslyn.Services.Shared.NormalizedTextSpanCollection)">
            <summary>
            Determines whether this span set overlaps with another span set.
            </summary>
            <param name="set">The span set to test.</param>
            <returns><c>true</c> if the span sets overlap, otherwise <c>false</c>.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="set"/> is null.</exception>
        </member>
        <member name="M:Roslyn.Services.Shared.NormalizedTextSpanCollection.OverlapsWith(Roslyn.Compilers.TextSpan)">
            <summary>
            Determines whether this span set overlaps with another span.
            </summary>
            <param name="span">The span to test.</param>
            <returns><c>true</c> if this span set overlaps with the given span, otherwise <c>false</c>.</returns>
        </member>
        <member name="M:Roslyn.Services.Shared.NormalizedTextSpanCollection.IntersectsWith(Roslyn.Services.Shared.NormalizedTextSpanCollection)">
            <summary>
            Determines wheher this span set intersects with another span set.
            </summary>
            <param name="set">Set to test.</param>
            <returns><c>true</c> if the span sets intersect, otherwise <c>false</c>.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="set"/> is null.</exception>
        </member>
        <member name="M:Roslyn.Services.Shared.NormalizedTextSpanCollection.IntersectsWith(Roslyn.Compilers.TextSpan)">
            <summary>
            Determines wheher this span set intersects with another span.
            </summary>
            <returns><c>true</c> if this span set intersects with the given span, otherwise <c>false</c>.</returns>
        </member>
        <member name="M:Roslyn.Services.Shared.NormalizedTextSpanCollection.GetHashCode">
            <summary>
            Gets a unique hash code for the span set.
            </summary>
            <returns>A 32-bit hash code associated with the set.</returns>
        </member>
        <member name="M:Roslyn.Services.Shared.NormalizedTextSpanCollection.Equals(System.Object)">
            <summary>
            Determines whether this span set is the same as another object.
            </summary>
            <param name="obj">The object to test.</param>
            <returns><c>true</c> if the two objects are equal, otherwise <c>false</c>.</returns>
        </member>
        <member name="M:Roslyn.Services.Shared.NormalizedTextSpanCollection.ToString">
            <summary>
            Provides a string representation of the set.
            </summary>
            <returns>Thetring representation of the set.</returns>
        </member>
        <member name="M:Roslyn.Services.Shared.NormalizedTextSpanCollection.#ctor(Roslyn.Services.Shared.NormalizedTextSpanCollection.OrderedSpanList)">
            <summary>
            Private ctor for use when the span list is already normalized.
            </summary>
            <param name="normalizedSpans">An already normalized span list.</param>
        </member>
        <member name="T:Roslyn.Utilities.AsyncLazy`1">
            <summary>
            A class that defers computation of a value asynchronously.
            
            Each asynchronous consumer is isolated from other consumers and the actual task that is 
            doing the computation, so that each can separately cancel its request without affecting the
            others. The computation task starts only after the value is first requested and is cancelled only if all
            outstanding consumers cancel. Computation may be restarted if a new request occurs after cancellation
            of the actual computation task.
            </summary>
        </member>
        <member name="T:Roslyn.Utilities.ComputedValueSource`1">
            <summary>
            A retainer that computes its value from a computation function.
            The value is not stored.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Extensions.ISyntaxTreeInfo.ProbablyContainsIdentifier(System.String)">
            <summary>
            Returns true when the identifier is probably (but not guaranteed) to be within the
            syntax tree.  Returns false when the identifier is guaranteed to not be within the the
            syntax tree.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Extensions.ISyntaxTreeInfo.ProbablyContainsEscapedIdentifier(System.String)">
            <summary>
            Returns true when the identifier is probably (but not guaranteed) escaped within the
            text of the syntax tree.  Returns false when the identifier is guaranteed to not be
            escaped within the the text of the syntax tree.  An identifier that is not escaped within
            the text can be found by searching the text directly.  An identifier that is escaped can
            only be found by parsing the text and syntactically interpretting any escaping
            mechanisms found in the language ("\uXXXX" or "@XXXX" in C# or "[XXXX]" in Visual
            Basic).
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Utilities.BloomFilter.#ctor(System.Int32,System.Double,System.Boolean)">
            <summary><![CDATA[
            From the bloom filter calculator here: http://hur.st/bloomfilter?n=4&p=1.0E-20
            
            1) n  = Number of items in the filter
            
            2) p = Probability of false positives, (a double between 0 and 1).
            
            3) m = Number of bits in the filter
            
            4) k = Number of hash functions
            
            m = ceil((n * log(p)) / log(1.0 / (pow(2.0, log(2.0)))))
            
            k = round(log(2.0) * m / n)
            ]]></summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Utilities.BloomFilter.ComputeHash(System.String,System.Int32)">
            <summary>
            Modification of the murmurhash2 algorithm.  Code is simpler because it operates over
            strings instead of byte arrays.  Because each string character is two bytes, it is known
            that the input will be an even number of bytes (though not necessarily a multiple of 4).
            
            This is needed over the normal 'string.GetHashCode()' because we need to be able to generate
            'k' different well distributed hashes for any given string s.  Also, we want to be able to
            generate these hashes without allocating any memory.  My ideal solution would be to use an
            MD5 hash.  However, there appears to be no way to do MD5 in .Net where you can:
            
            a) feed it individual values instead of a byte[]
            
            b) have the hash computed into a byte[] you provide instead of a newly allocated one
            
            Generating 'k' pieces of garbage on each insert and lookup seems very wasteful.  So,
            instead, we use murmur hash since it provides well distributed values, allows for a
            seed, and allocates no memory.
            
            Murmur hash is public domain.  Actual code is included below as reference.
            </summary>
        </member>
        <member name="T:Roslyn.Services.SolutionInfo">
            <summary>
            A class that represents all the arguments necessary to create a new solution instance.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.ISolutionInfo">
            <summary>
            Used by HostWorkspace to access information about a solution. This data is read once and is
            expected to be the state of the solution when it is first loaded or declared.
            </summary>
        </member>
        <member name="P:Roslyn.Services.Host.ISolutionInfo.Id">
            <summary>
            The unique Id of the solution.
            </summary>
        </member>
        <member name="P:Roslyn.Services.Host.ISolutionInfo.Projects">
            <summary>
            A list of projects initially associated with the solution.
            </summary>
        </member>
        <member name="P:Roslyn.Services.Host.ISolutionInfo.Version">
            <summary>
            The version of the solution.
            </summary>
        </member>
        <member name="P:Roslyn.Services.Host.ISolutionInfo.FilePath">
            <summary>
            The path to the solution file, or null if there is no solution file.
            </summary>
        </member>
        <member name="M:Roslyn.Services.SolutionInfo.#ctor(Roslyn.Services.SolutionId,Roslyn.Services.VersionStamp,System.String,System.Collections.Generic.IEnumerable{Roslyn.Services.IProjectInfo})">
            <summary>
            Create a new instance of SolutionInfo
            </summary>
        </member>
        <member name="P:Roslyn.Services.SolutionInfo.Id">
            <summary>
            The unique Id of the solution.
            </summary>
        </member>
        <member name="P:Roslyn.Services.SolutionInfo.Version">
            <summary>
            The version of the solution.
            </summary>
        </member>
        <member name="P:Roslyn.Services.SolutionInfo.FilePath">
            <summary>
            The path to the solution file, or null if there is no solution file.
            </summary>
        </member>
        <member name="P:Roslyn.Services.SolutionInfo.Projects">
            <summary>
            A list of projects initially associated with the solution.
            </summary>
        </member>
        <member name="T:Roslyn.Utilities.ComputedValueSource`3">
            <summary>
            A retainer that computes its value from two inputs and a computation function.
            The value is not stored.
            </summary>
        </member>
        <member name="T:Roslyn.Utilities.AbstractGuardedValueSource`1">
            <summary>
            A value source that guards access to its value so only one computation 
            happens at a time.
            </summary>
            <typeparam name="T"></typeparam>
        </member>
        <member name="T:Roslyn.Utilities.GuardedValueSource`1">
            <summary>
            A value source that guards access to another value source so that
            only one computation happens at a time.
            </summary>
            <typeparam name="T"></typeparam>
        </member>
        <member name="T:Roslyn.Services.ReferenceLocation">
            <summary>
            Information about a reference to a symbol.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ReferenceLocation.Document">
            <summary>
            The document that the reference was found in.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ReferenceLocation.Alias">
            <summary>
            If the symbol was bound through an alias, then this is the alias that was used.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ReferenceLocation.Location">
            <summary>
            The actual source location for a given symbol.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ReferenceLocation.IsImplicit">
            <summary>
            Indicates if this is an implicit reference to the definition.  i.e. the definition wasn't
            explicitly stated in the source code at this position, but it was still referenced. For
            example, this can happen with special methods like GetEnumerator that are used
            implicitly by a 'for each' statement.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ReferenceLocation.IsCandidateLocation">
            <summary>
            Indicates if this was not an exact reference to a location, but was instead a possible
            location that was found through error tolerance.  For example, a call to a method like
            "Foo()" could show up as an error tolerance location to a method "Foo(int i)" if no
            actual "Foo()" method existed.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.TriviaData">
            <summary>
            it holds onto trivia information between two tokens
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.AbstractTriviaDataFactory.Whitespace">
            <summary>
            represents a general trivia between two tokens. slightly more expensive than others since it
            needs to calculate stuff unlike other cases
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.TreeData">
            <summary>
            this provides information about the syntax tree formatting service is formatting.
            this provides necessary abstraction between different kinds of syntax trees so that ones that contain
            actual text or cache can answer queries more efficiently.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.AdjustNewLinesOption">
            <summary>
            Options for AdjustNewLinesOperation.
            
            PreserveLines means the operation will leave lineBreaks as it is if original lineBreaks are
            equal or greater than given lineBreaks
            
            ForceLines means the operation will force existing lineBreaks to the given lineBreaks.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.AdjustSpacesOption">
            <summary>
            Options for AdjustSpacesOperation.
            </summary>
        </member>
        <member name="F:Roslyn.Services.Formatting.AdjustSpacesOption.PreserveSpaces">
            <summary>
            Preserve spaces as it is
            </summary>
        </member>
        <member name="F:Roslyn.Services.Formatting.AdjustSpacesOption.DefaultSpacesIfOnSingleLine">
            <summary>
            DefaultSpacesIfOnSingleLine means a default space operation created by the formatting
            engine by itself. It has its own option kind to indicates that this is an operation
            generated by the engine itself. 
            </summary>
        </member>
        <member name="F:Roslyn.Services.Formatting.AdjustSpacesOption.ForceSpacesIfOnSingleLine">
            <summary>
            ForceSpaceIfOnSingleLine means forcing the specified spaces between two tokens if two
            tokens are on a single line. 
            </summary>
        </member>
        <member name="F:Roslyn.Services.Formatting.AdjustSpacesOption.ForceSpaces">
            <summary>
            ForceSpaces means forcing the specified spaces regardless of positions of two tokens.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.AlignTokensOption">
            <summary>
            option to control AlignTokensOperation behavior
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.NodeOperations">
            <summary>
            this collector gathers formatting operations that are based on a node
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.TokenStream">
            <summary>
            This class takes care of tokens consumed in the formatting engine.
            
            It will maintain information changed compared to original token information. and answers
            information about tokens.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.TokenStream.GetColumn(Roslyn.Services.Formatting.TokenData,System.Func{Roslyn.Services.Formatting.TokenData,Roslyn.Services.Formatting.TokenData,Roslyn.Services.Formatting.TriviaData})">
            <summary>
            Get column of the token 
            * column means text position on a line where all tabs are converted to spaces that first position on a line becomes 0
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.TokenStream.Changes">
            <summary>
            thread-safe collection that holds onto changes
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.TokenPairWithOperations">
            <summary>
            it holds onto space and wrapping operation need to run between two tokens.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.ContextIntervalTree`1">
            <summary>
            a tweaked version of our interval tree to meet the formatting engine's need
            
            it now has an ability to return a smallest span that contains a position rather than
            all Intersecting or overlapping spans
            </summary>
        </member>
        <member name="T:Roslyn.Services.Shared.Collections.IntervalTree`1">
            <summary>
            An interval tree represents an ordered tree data structure to store intervals of the form [start, end).  It
            allows you to efficiently find all intervals that intersect or overlap a provided interval.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.FormattingContext">
            <summary>
            this class maintain contextual information such as 
            indentation of current position, based token to follow in current position and etc.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.FormattingContext.AnchorData">
            <summary>
            data that will be used in an interval tree related to Anchor.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.FormattingContext.IndentationData">
            <summary>
            data that will be used in an interval tree related to indentation.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.SuppressSpacingData">
            <summary>
            data that will be used in an interval tree related to suppressing spacing operations.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.SuppressWrappingData">
            <summary>
            data that will be used in an interval tree related to suppressing wrapping operations.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.IFormattingResult">
            <summary>
            Contains changes that can be either applied to different targets such as a buffer or a tree
            or examined to be used in other places such as quick fix.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.AbstractAggregatedFormattingResult.Rewriter(System.Collections.Generic.Dictionary{Roslyn.Utilities.ValueTuple{Roslyn.Compilers.Common.CommonSyntaxToken,Roslyn.Compilers.Common.CommonSyntaxToken},Roslyn.Services.Formatting.TriviaData},System.Threading.CancellationToken)">
            <summary>
            rewrite the node with the given trivia information in the map
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.AbstractFormatEngine.FormatSummary">
            <summary>
            return summary for current formatting work
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.AbstractFormatEngine.OperationApplier">
            <summary>
            this actually applies formatting operations to trivia between two tokens
            </summary>
        </member>
        <member name="F:Roslyn.Services.Formatting.AbstractFormattingResult.SpanToFormat">
            <summary>
            span in the tree to format
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.AbstractFormattingResult.Rewriter(System.Collections.Generic.Dictionary{Roslyn.Utilities.ValueTuple{Roslyn.Compilers.Common.CommonSyntaxToken,Roslyn.Compilers.Common.CommonSyntaxToken},Roslyn.Services.Formatting.TriviaData},System.Threading.CancellationToken)">
            <summary>
            rewrite the tree info root node with the trivia information in the map
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.OperationCache`1">
            <summary>
            a delegate cache for a continuation style chaining
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.IOperationHolder`1">
            <summary>
            a delegate cache for a continuation style chaining
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.ExportFormattingRule">
            <summary>
            Specifies the exact type of the formatting rule exported
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.Formatter">
            <summary>
            static Formatter class that provides default formatting behavior
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.Formatter.GetSuppressOperations(System.Collections.Generic.IEnumerable{Roslyn.Services.Formatting.IFormattingRule},Roslyn.Compilers.Common.CommonSyntaxNode)">
            <summary>
            return SuppressOperation for the node provided by the given formatting rules
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.Formatter.GetAnchorIndentationOperations(System.Collections.Generic.IEnumerable{Roslyn.Services.Formatting.IFormattingRule},Roslyn.Compilers.Common.CommonSyntaxNode)">
            <summary>
            return AnchorIndentationOperation for the node provided by the given formatting rules
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.Formatter.GetIndentBlockOperations(System.Collections.Generic.IEnumerable{Roslyn.Services.Formatting.IFormattingRule},Roslyn.Compilers.Common.CommonSyntaxNode)">
            <summary>
            return IndentBlockOperation for the node provided by the given formatting rules
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.Formatter.GetAlignTokensOperations(System.Collections.Generic.IEnumerable{Roslyn.Services.Formatting.IFormattingRule},Roslyn.Compilers.Common.CommonSyntaxNode)">
            <summary>
            return AlignTokensOperation for the node provided by the given formatting rules
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.Formatter.GetAdjustNewLinesOperation(System.Collections.Generic.IEnumerable{Roslyn.Services.Formatting.IFormattingRule},Roslyn.Compilers.Common.CommonSyntaxToken,Roslyn.Compilers.Common.CommonSyntaxToken)">
            <summary>
            return AdjustNewLinesOperation for the node provided by the given formatting rules
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.Formatter.GetAdjustSpacesOperation(System.Collections.Generic.IEnumerable{Roslyn.Services.Formatting.IFormattingRule},Roslyn.Compilers.Common.CommonSyntaxToken,Roslyn.Compilers.Common.CommonSyntaxToken)">
            <summary>
            return AdjustSpacesOperation for the node provided by the given formatting rules
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.Formatter.Format(Roslyn.Compilers.Common.CommonSyntaxNode,Roslyn.Services.Formatting.FormattingOptions,System.Collections.Generic.IEnumerable{Roslyn.Services.Formatting.IFormattingRule},System.Threading.CancellationToken)">
            <summary>
            Format given node
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.Formatter.Format(Roslyn.Compilers.Common.CommonSyntaxNode,Roslyn.Compilers.TextSpan,Roslyn.Services.Formatting.FormattingOptions,System.Collections.Generic.IEnumerable{Roslyn.Services.Formatting.IFormattingRule},System.Threading.CancellationToken)">
            <summary>
            Format given span of the node
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.Formatter.Format(Roslyn.Compilers.Common.CommonSyntaxNode,System.Collections.Generic.IEnumerable{Roslyn.Compilers.TextSpan},Roslyn.Services.Formatting.FormattingOptions,System.Collections.Generic.IEnumerable{Roslyn.Services.Formatting.IFormattingRule},System.Threading.CancellationToken)">
            <summary>
            Format given spans of the node
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.Formatter.Format(Roslyn.Compilers.Common.CommonSyntaxNode,Roslyn.Compilers.SyntaxAnnotation,Roslyn.Services.Formatting.FormattingOptions,System.Collections.Generic.IEnumerable{Roslyn.Services.Formatting.IFormattingRule},System.Threading.CancellationToken)">
            <summary>
            Format ones annotated by the syntax annotation
            </summary>
        </member>
        <member name="P:Roslyn.Services.Formatting.Formatter.FormattingOperationsFactory">
            <summary>
            this factory lets users to create foramtting operations returned by IFormattingRule
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.FormattingOptions.GetDefaultOptions">
            <summary>
            return default formatting options
            
            this can be modified and given to Format method to have different formatting behavior
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.IndentBlockOption">
            <summary>
            Options for IndentBlockOperation
            </summary>
        </member>
        <member name="F:Roslyn.Services.Formatting.IndentBlockOption.RelativePosition">
            <summary>
            IndentationDeltaOrPosition will be interpreted as delta of its enclosing indentation
            </summary>
        </member>
        <member name="F:Roslyn.Services.Formatting.IndentBlockOption.AbsolutePosition">
            <summary>
            IndentationDeltaOrPosition will be interpreted as absolute position
            </summary>
        </member>
        <member name="F:Roslyn.Services.Formatting.IndentBlockOption.PositionMask">
            <summary>
            Mask for position options
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.NextAction`1">
            <summary>
            Represents a next operation to run in a continuation style chaining.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.NextOperation`1">
            <summary>
            Represents a next operation to run in a continuation style chaining.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.AdjustNewLinesOperation">
            <summary>
            indicate how many lines are needed between two tokens
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.AdjustSpacesOperation">
            <summary>
            indicate how many spaces are needed between two spaces
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.AlignTokensOperation">
            <summary>
            align first tokens on lines among the given tokens to the base token
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.AnchorIndentationOperation">
            <summary>
            preserve relative spaces between anchor token and first tokens on lines within the given text span 
            as long as it doesn't have explicit line operations associated with them
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.FormattingOperationsFactory.CreateAnchorIndentationOperation(Roslyn.Compilers.Common.CommonSyntaxToken,Roslyn.Compilers.Common.CommonSyntaxToken)">
            <summary>
            create anchor indentation region around start and end token
            start token will act as anchor token and right after anchor token to end of end token will become anchor region
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.FormattingOperationsFactory.CreateAnchorIndentationOperation(Roslyn.Compilers.Common.CommonSyntaxToken,Roslyn.Compilers.Common.CommonSyntaxToken,Roslyn.Compilers.Common.CommonSyntaxToken,Roslyn.Compilers.TextSpan)">
            <summary>
            create anchor indentation region more explicitly by providing all necessary information.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.FormattingOperationsFactory.CreateSuppressOperation(Roslyn.Compilers.Common.CommonSyntaxToken,Roslyn.Compilers.Common.CommonSyntaxToken,Roslyn.Services.Formatting.SuppressOption)">
            <summary>
            create suppress region around start and end token
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.FormattingOperationsFactory.CreateSuppressOperation(Roslyn.Compilers.Common.CommonSyntaxToken,Roslyn.Compilers.Common.CommonSyntaxToken,Roslyn.Compilers.TextSpan,Roslyn.Services.Formatting.SuppressOption)">
            <summary>
            create suppress region around the given text span
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.FormattingOperationsFactory.CreateIndentBlockOperation(Roslyn.Compilers.Common.CommonSyntaxToken,Roslyn.Compilers.Common.CommonSyntaxToken,System.Int32,Roslyn.Services.Formatting.IndentBlockOption)">
            <summary>
            create indent block region around the start and end token with the given indentation delta added to the existing indentation at the position of the start token
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.FormattingOperationsFactory.CreateIndentBlockOperation(Roslyn.Compilers.Common.CommonSyntaxToken,Roslyn.Compilers.Common.CommonSyntaxToken,Roslyn.Compilers.TextSpan,System.Int32,Roslyn.Services.Formatting.IndentBlockOption)">
            <summary>
            create indent block region around the given text span with the given indentation delta added to the existing indentation at the position of the start token
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.FormattingOperationsFactory.CreateRelativeIndentBlockOperation(Roslyn.Compilers.Common.CommonSyntaxToken,Roslyn.Compilers.Common.CommonSyntaxToken,Roslyn.Compilers.Common.CommonSyntaxToken,System.Int32,Roslyn.Services.Formatting.IndentBlockOption)">
            <summary>
            create indent block region around the start and end token with the given indentation delta added to the column of the base token
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.FormattingOperationsFactory.CreateRelativeIndentBlockOperation(Roslyn.Compilers.Common.CommonSyntaxToken,Roslyn.Compilers.Common.CommonSyntaxToken,Roslyn.Compilers.Common.CommonSyntaxToken,Roslyn.Compilers.TextSpan,System.Int32,Roslyn.Services.Formatting.IndentBlockOption)">
            <summary>
            create indent block region around the given text span with the given indentation delta added to the column of the base token
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.FormattingOperationsFactory.CreateAlignTokensOperation(Roslyn.Compilers.Common.CommonSyntaxToken,System.Collections.Generic.IEnumerable{Roslyn.Compilers.Common.CommonSyntaxToken},Roslyn.Services.Formatting.AlignTokensOption)">
            <summary>
            instruct the engine to try to align first tokens on the lines among the given tokens to be aligned to the base token
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.FormattingOperationsFactory.CreateAdjustNewLinesOperation(System.Int32,Roslyn.Services.Formatting.AdjustNewLinesOption)">
            <summary>
            instruct the engine to try to put the give lines between two tokens
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.FormattingOperationsFactory.CreateAdjustSpacesOperation(System.Int32,Roslyn.Services.Formatting.AdjustSpacesOption)">
            <summary>
            instruct the engine to try to put the given spaces between two tokens
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.FormattingOperationsFactory.GetExpandedSpan(Roslyn.Compilers.Common.CommonSyntaxToken,Roslyn.Compilers.Common.CommonSyntaxToken)">
            <summary>
            this will create a span that includes its trailing trivia of its previous token and leading trivia of its next token
            for example, for code such as "class A { int ...", if given tokens are "A" and "{", this will return span [] of "class[ A { ]int ..."
            which included trailing trivia of "class" which is previous token of "A", and leading trivia of "int" which is next token of "{"
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.IndentBlockOperation">
            <summary>
            set indentation level for the given text span. it can be relative, absolute or dependant to other tokens
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.SuppressOperation">
            <summary>
            suppress formatting operations within the given text span
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.SuppressOption">
            <summary>
            Options for SuppressOperation
            
            NoWrappingIfOnSingleLine means no wrapping if given tokens are on same line
            NoWrapping means no wrapping regardless of relative positions of two tokens
            NoSpacing means no spacing regardless of relative positions of two tokens
            
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.TokenData">
            <summary>
            it represents a token that is inside of token stream not also outside of token stream
            
            it uses an index to navigate previous and after tokens in the stream to make navigation faster. and regular
            Previous/NextToken for tokens outside of the stream.
            
            this object is supposed to be live very short but created a lot of time. that is why it is struct. 
            (same reason why CommonSyntaxToken is struct - to reduce heap allocation)
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.TaskExecutor.ConcurrentExecutor">
            <summary>
            concurrent task executor
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.TaskExecutor.SynchronousExecutor">
            <summary>
            synchronous executor
            </summary>
        </member>
        <member name="F:Roslyn.Services.Formatting.TaskExecutor.SynchronousExecutor.taskDone">
            <summary>
            cache a task that is already in completed state
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.AbstractTriviaFormatter`1.#cctor">
            <summary>
            set up space string caches
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.AbstractTriviaFormatter`1.Succeeded">
            <summary>
            return whether this formatting succeeded or not
            for example, if there is skipped tokens in one of trivia between tokens
            we consider formatting this region is failed
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.AbstractTriviaFormatter`1.IsWhitespace(Roslyn.Compilers.Common.CommonSyntaxTrivia)">
            <summary>
            check whether given trivia is whitespace trivia or not
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.AbstractTriviaFormatter`1.IsEndOfLine(Roslyn.Compilers.Common.CommonSyntaxTrivia)">
            <summary>
            check whether given trivia is end of line trivia or not
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.AbstractTriviaFormatter`1.Convert(Roslyn.Compilers.Common.CommonSyntaxTrivia)">
            <summary>
            convert common syntax trivia to SyntaxTrivia
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.AbstractTriviaFormatter`1.CreateWhitespace(System.String)">
            <summary>
            create whitespace trivia
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.AbstractTriviaFormatter`1.CreateEndOfLine">
            <summary>
            create end of line trivia
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.AbstractTriviaFormatter`1.GetLineColumnRuleBetween(Roslyn.Compilers.Common.CommonSyntaxTrivia,Roslyn.Compilers.Common.CommonSyntaxTrivia)">
            <summary>
            return line column rule for the given two trivia
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.AbstractTriviaFormatter`1.Format(Roslyn.Services.Formatting.LineColumn,Roslyn.Compilers.Common.CommonSyntaxTrivia,System.Collections.Generic.List{`0},System.Threading.CancellationToken)">
            <summary>
            format the given trivia at the line column position and put result to the changes list
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.AbstractTriviaFormatter`1.Format(Roslyn.Services.Formatting.LineColumn,Roslyn.Compilers.Common.CommonSyntaxTrivia,System.Collections.Generic.List{Roslyn.Compilers.TextChange},System.Threading.CancellationToken)">
            <summary>
            format the given trivia at the line column position and put text change result to the changes list
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.AbstractTriviaFormatter`1.GetLineColumnRuleBetween(Roslyn.Compilers.Common.CommonSyntaxTrivia,Roslyn.Services.Formatting.LineColumnDelta,Roslyn.Compilers.Common.CommonSyntaxTrivia)">
            <summary>
            get line column rule between two trivia
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.AbstractTriviaFormatter`1.ContainsOnlyWhitespace(System.Int32,System.Int32)">
            <summary>
            check whether string between start and end position only contains whitespace
            </summary>
        </member>
        <member name="M:Roslyn.Services.Formatting.AbstractTriviaFormatter`1.GetTrailingLinesAtEndOfTrivia1(Roslyn.Services.Formatting.LineColumn)">
            <summary>
            return 0 or 1 based on line column of the trivia1's end point
            this is based on our structured trivia's implementation detail that some structured trivia can have
            one new line at the end of the trivia
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.AbstractTriviaFormatter`1.Formatter`1">
            <summary>
            format the trivia at the line column and put changes to the changes
            </summary>
        </member>
        <member name="T:Roslyn.Services.Formatting.AbstractTriviaFormatter`1.WhitespaceAppender`1">
            <summary>
            create whitespace for the delta at the line column and put changes to the changes
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.IProjectFile">
            <summary>
            Represents a project file loaded from disk.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.IProjectFile.GetCompilationOptions">
            <summary>
            The compilation options for this project.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.IProjectFile.GetParseOptions">
            <summary>
            The parse options for this project.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.IProjectFile.GetDocuments">
            <summary>
            The source documents.
            </summary>
            <returns></returns>
        </member>
        <member name="M:Roslyn.Services.Host.IProjectFile.GetProjectReferences">
            <summary>
            References to other projects.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.IProjectFile.GetMetadataReferences">
            <summary>
            References to other metadata files; libraries and executables.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.IProjectFile.GetSourceCodeKind(System.String)">
            <summary>
            Get the kind of source found in the specified file. 
            This is usually determined by the file name extension.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.IProjectFile.GetDocumentExtension(Roslyn.Compilers.SourceCodeKind)">
            <summary>
            Gets the corresponding extension for a source file of a given kind.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.IProjectFile.GetProperty(System.String)">
            <summary>
            Gets a specific project file property.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.IProjectFile.AddDocument(System.String,System.String)">
            <summary>
            Add a source document to a project file.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.IProjectFile.RemoveDocument(System.String)">
            <summary>
            Remove a source document from a project file.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.IProjectFile.Save">
            <summary>
            Save the current state of the project file to disk.
            </summary>
        </member>
        <member name="P:Roslyn.Services.Host.IProjectFile.Guid">
            <summary>
            The project's individual GUID
            </summary>
        </member>
        <member name="P:Roslyn.Services.Host.IProjectFile.FilePath">
            <summary>
            The path to the project file.
            </summary>
        </member>
        <member name="P:Roslyn.Services.Host.IProjectFile.OutputPath">
            <summary>
            The directory the project will compile into.
            </summary>
        </member>
        <member name="P:Roslyn.Services.Host.IProjectFile.AssemblyName">
            <summary>
            The name of the compiled assembly.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.AbstractProjectFile.GetAbsolutePath(System.String)">
            <summary>
            Resolves the given path that is possibly relative to the project directory.
            </summary>
            <remarks>
            The resulting path is absolute but migth not be normalized.
            </remarks>
        </member>
        <member name="T:Roslyn.Services.Host.IDocumentFileInfo">
            <summary>
            Represents a source file that is part of a project file.
            </summary>
        </member>
        <member name="P:Roslyn.Services.Host.IDocumentFileInfo.FilePath">
            <summary>
            The absolute path to the document file on disk.
            </summary>
        </member>
        <member name="P:Roslyn.Services.Host.IDocumentFileInfo.LogicalPath">
            <summary>
            A fictional path to the document, relative to the project.
            The document may not actually exist at this location, and is used
            to represent linked documents.
            </summary>
        </member>
        <member name="P:Roslyn.Services.Host.IDocumentFileInfo.IsLinked">
            <summary>
            True if the document has a logical path that differs from its 
            absolute file path.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.IProjectFileReference">
            <summary>
            Represents a reference to another project file.
            </summary>
        </member>
        <member name="P:Roslyn.Services.Host.IProjectFileReference.Guid">
            <summary>
            The unique GUID of the referenced project.
            </summary>
        </member>
        <member name="P:Roslyn.Services.Host.IProjectFileReference.Path">
            <summary>
            The path on disk to the other project file. 
            This path may be relative to the referencing project's file or an asbolute path.
            </summary>
        </member>
        <member name="P:Roslyn.Services.Host.AbstractProjectFile.ProjectFileReference.Path">
            <summary>
            Path relative to the containing project file path.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.LoadedWorkspace">
            <summary>
            A workspace based on loading solution and project files from disk.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.HostWorkspace">
            <summary>
            A base class used by Hosts to define host specific Workspaces.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.TrackingWorkspace">
            <summary>
            A workspace that tracks changes to open documents.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Workspace">
            <summary>
            A basic workspace that computes in-progress state via a background compiler.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IWorkspace.GetDocumentId(Roslyn.Compilers.ITextContainer)">
            <summary>
            Gets the document ID associated with a text container.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IWorkspace.TryGetDocument(Roslyn.Compilers.IText,Roslyn.Services.IDocument@)">
            <summary>
            Tries to get the document corresponding to the text from the current solution. If the
            document does not contain the exact text a document from a new solution containing the
            specified text is constructed. If no document is associated with the specified text's
            container, then the method returns false.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IWorkspace.TryGetDocumentFromInProgressSolution(Roslyn.Compilers.IText,Roslyn.Services.IDocument@)">
            <summary>
            Tries to get the document corresponding to the text from the current in-progress
            solution. If the document does not contain the exact text a document from a new solution
            containing the specified text is constructed. If no document is associated with the
            specified text's container, then the method returns false.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IWorkspace.IsDocumentOpen(Roslyn.Services.DocumentId)">
            <summary>
            Determines if the document is currently open in the host environment.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IWorkspace.GetOpenedDocuments">
            <summary>
            Gets a list of the currently opened documents.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IWorkspace.OpenDocument(Roslyn.Services.DocumentId)">
            <summary>
            Open the specified document.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IWorkspace.CloseDocument(Roslyn.Services.DocumentId)">
            <summary>
            Close the specified document.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IWorkspace.ReloadDocument(Roslyn.Services.DocumentId)">
            <summary>
            Reloads the document
            </summary>
        </member>
        <member name="M:Roslyn.Services.IWorkspace.ReloadProject(Roslyn.Services.ProjectId)">
            <summary>
            Reloads the project and all related documents
            </summary>
        </member>
        <member name="M:Roslyn.Services.IWorkspace.ReloadSolution">
            <summary>
            Reloads the entire solution, projects and all documents.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IWorkspace.IsSupported(Roslyn.Services.WorkspaceFeature)">
            <summary>
            Determines if the specific workspace feature is supported by this workspace.
            Features not supported will generate a NotSupportedException if called.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IWorkspace.ApplyChanges(Roslyn.Services.ISolution,Roslyn.Services.ISolution,System.String,System.Threading.CancellationToken)">
            <summary>
            Apply changes made between the old solution and the new solution to the workspace's
            current solution. If the changes are applied successfully the method returns true.  If
            the workspace's current solution is not the same instance as the specified old solution
            then no changes are applied and the method returns false.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IWorkspace.AddProjectReference(Roslyn.Services.ProjectId,Roslyn.Services.ProjectId)">
            <summary>
            Add a project reference to the specified project.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IWorkspace.RemoveProjectReference(Roslyn.Services.ProjectId,Roslyn.Services.ProjectId)">
            <summary>
            Remove a project reference from the specified project.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IWorkspace.AddMetadataReference(Roslyn.Services.ProjectId,Roslyn.Compilers.MetadataReference)">
            <summary>
            Add an assembly reference to the specified project.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IWorkspace.RemoveMetadataReference(Roslyn.Services.ProjectId,Roslyn.Compilers.MetadataReference)">
            <summary>
            Remove an assembly reference from the specified project.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IWorkspace.AddDocument(Roslyn.Services.DocumentId,System.Collections.Generic.IEnumerable{System.String},System.String,Roslyn.Compilers.IText,Roslyn.Compilers.SourceCodeKind)">
            <summary>
            Add a new document to the project indicated by the id specified.
            </summary>
            <remarks>
            If the workspace can not accommodate the document name it may pick a different one.
            (for example, by appending a numerical suffix to ensure it is unique). 
            An extension should not be provided here. It will be automatically added.
            </remarks>
        </member>
        <member name="M:Roslyn.Services.IWorkspace.AddExistingDocument(Roslyn.Services.DocumentId,System.String,System.Collections.Generic.IEnumerable{System.String})">
            <summary>
            Add an new document that corresponds to an existing file to the project indicated by the id specified.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IWorkspace.RemoveDocument(Roslyn.Services.DocumentId)">
            <summary>
            Remove a document from its project. This does not delete the corresponding file.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IWorkspace.UpdateDocument(Roslyn.Services.DocumentId,Roslyn.Compilers.IText)">
            <summary>
            Update the text of a document.
            </summary>
        </member>
        <member name="E:Roslyn.Services.IWorkspace.WorkspaceChanged">
            <summary>
            An event raised whenever the current solution is updated.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IWorkspace.CurrentSolution">
            <summary>
            The current solution, with the most up-to-date set of projects and documents. On access,
            metadata for this solution may need to be loaded or compiled.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IWorkspace.CurrentInProgressSolution">
            <summary>
            The current in-progress solution. The in-progress solution is a self-consistent version
            of the solution that contains only projects and documents that correspond to metadata
            that is already loaded or compiled.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.IHaveWorkspaceServices">
            <summary>
            Provides access to all available workspace services.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Workspace.LoadSolution(System.String,System.String,System.String,System.Boolean)">
            <summary>
            Creates a new workspace by loading the related projects as defined in the saved solution file.
            </summary>
            <param name="solutionFileName">The full path to the solution file.</param>
            <param name="configuration">The configuration, typically "Debug" or "Release".</param>
            <param name="platform">The platform, typically "x86" or "AnyCPU"</param>
            <param name="enableFileTracking">Enables file tracking events and automatic reloads.</param>
        </member>
        <member name="M:Roslyn.Services.Workspace.LoadStandAloneProject(System.String,System.String,System.String,System.String,System.Boolean)">
            <summary>
            Creates a new workspace with as single project by loading the project details from the specified project file.
            Project references are converted into metadata references of existing assemblies.
            </summary>
            <param name="projectFileName">The full path to the project file.</param>
            <param name="configuration">An optional configuration, typically "Debug" or "Release".</param>
            <param name="platform">An optional platform, typically "x86" or "AnyCPU"</param>
            <param name="language">An optional language. If null, the language is determined from the file extension.</param>
            <param name="enableFileTracking">Enables file tracking events and automatic reloads.</param>
        </member>
        <member name="M:Roslyn.Services.Workspace.LoadProjectFromCommandLineArguments(System.String,System.String,System.Collections.Generic.IEnumerable{System.String},System.String,System.Boolean)">
            <summary>
            Creates a new workspace with a single project by inferring that project from the arguments 
            normally used to invoke the compiler from the command prompt.
            </summary>
            <param name="projectName">The name of the project.</param>
            <param name="language">The programming language of the project's source files.</param>
            <param name="commandLineArguments">The command line arguments split into separate strings.</param>
            <param name="baseDirectory"></param>
            <param name="enableFileTracking">Enables file tracking events and automatic reloads.</param>
            <returns></returns>
        </member>
        <member name="M:Roslyn.Services.Workspace.LoadProjectFromCommandLineArguments(System.String,System.String,System.String,System.String,System.Boolean)">
            <summary>
            Creates a new workspace with a single project by inferring that project from the arguments 
            normally used to invoke the compiler from the command prompt.
            </summary>
            <param name="projectName">The name of the project.</param>
            <param name="language">The programming language of the project's source files.</param>
            <param name="commandLine">The command line arguments as a single string.</param>
            <param name="baseDirectory"></param>
            <param name="enableFileTracking">Enables file tracking events and automatic reloads.</param>
            <returns></returns>
        </member>
        <member name="M:Roslyn.Services.Workspace.GetWorkspace(Roslyn.Services.SolutionId)">
            <summary>
            Gets the workspace currently associated with the specified solution id.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Workspace.GetWorkspace(Roslyn.Compilers.ITextContainer)">
            <summary>
            Gets the workspace associated with the specific text container.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Workspace.RegisterPrimaryWorkspace(Roslyn.Services.IWorkspace)">
            <summary>
            Register a workspace as the primary workspace. Only one workspace can be the primary. This operation is normally done by the host.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Workspace.RegisterWorkspace(Roslyn.Services.IWorkspace)">
            <summary>
            Register a workspace. 
            </summary>
        </member>
        <member name="M:Roslyn.Services.Workspace.RegisterText(Roslyn.Compilers.ITextContainer,Roslyn.Services.IWorkspace)">
            <summary>
            Register a correspondence between a text container and a workspace.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Workspace.UnregisterText(Roslyn.Compilers.ITextContainer)">
            <summary>
            Unregister a correspondence between a text container and a workspace.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Workspace.Rendezvous(Roslyn.Compilers.ITextContainer,System.Action{Roslyn.Services.IWorkspace})">
            <summary>
            Queue an action to be invoked for a workspace as soon as it is registered to correspond to a specific text container.
            If the workspace is already registered to correspond to the text container the action is invoked immediately.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Workspace.Rendezvous(System.Action{Roslyn.Services.IWorkspace})">
            <summary>
            Queue an action to be invoked as soon as the primary workspace has been registered. If the primary workspace is already 
            registered the action is invoked immediately.
            </summary>
        </member>
        <member name="P:Roslyn.Services.Workspace.PrimaryWorkspace">
            <summary>
            The primary workspace, usually set by the host environment.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.HostWorkspace.OnSolutionFileChanged(Roslyn.Services.SolutionId)">
            <summary>
            Called when file change tracking is enabled and the solution file changes on disk.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.HostWorkspace.OnProjectFileChanged(Roslyn.Services.ProjectId)">
            <summary>
            Called when file change tracking is enabled and the project file changes on disk.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.HostWorkspace.OnDocumentFileChanged(Roslyn.Services.DocumentId)">
            <summary>
            Called when file change tracking is enabled and the document file changes on disk.
            </summary>
        </member>
        <member name="T:Roslyn.Services.IProjectInfo">
            <summary>
            Used by HostWorkspace to access information about a project. This data is read once and is
            expected to be the state of the project when it is first loaded or declared.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IProjectInfo.Id">
            <summary>
            The unique Id of the project.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IProjectInfo.Version">
            <summary>
            The version of the project.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IProjectInfo.Name">
            <summary>
            The name of the project. This may differ from the project's filename.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IProjectInfo.AssemblyName">
            <summary>
            The name of the assembly that this project will create, without file extension.
            </summary>,
        </member>
        <member name="P:Roslyn.Services.IProjectInfo.Language">
            <summary>
            The language of the project.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IProjectInfo.FilePath">
            <summary>
            The path to the project file or null if there is no project file.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IProjectInfo.CompilationOptions">
            <summary>
            The initial compilation options for the project.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IProjectInfo.ParseOptions">
            <summary>
            The initial parse options for the source code documents in this project.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IProjectInfo.Documents">
            <summary>
            The list of source documents initially associated with the project.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IProjectInfo.ProjectReferences">
            <summary>
            The project references initially defined for the project.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IProjectInfo.MetadataReferences">
            <summary>
            The metadata references initially defined for the project.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IProjectInfo.FileResolver">
            <summary>
            Returns the file resolver for the project.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IProjectInfo.IsSubmission">
            <summary>
            Returns true if this is a submission project for interactive sessions.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IProjectInfo.HostObjectType">
            <summary>
            Type of the host object.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.LoadedWorkspace.OpenFile(System.String)">
            <summary>
            Open either an entire solution or a single project file.
            </summary>
            <param name="fileName"></param>
        </member>
        <member name="M:Roslyn.Services.Host.LoadedWorkspace.OpenSolution(System.String)">
            <summary>
            Open an entire solution file. Close any solution file that is already open.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.LoadedWorkspace.LoadSolution(Roslyn.Services.SolutionId,System.String)">
            <summary>
            Loads a solution from a file into a DeferredSolutionInfo.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.LoadedWorkspace.CloseSolution">
            <summary>
            Close the currently open solution file.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.LoadedWorkspace.OpenProject(System.String)">
            <summary>
            Open a single project file into a new solution.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.LoadedWorkspace.LoadedProject">
            <summary>
            Manages the flow of information between the workspace and a project file on disk.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.LoadedWorkspace.LoadedProject.DeferredProjectInfo">
            <summary>
            A project info that gets its state from a demand loaded project file.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.SectionBlock">
            <summary>
            Represents a SectionBlock in a .sln file. Section blocks are of the form:
            
            Type(ParenthesizedName) = Value
                Key = Value
                [more keys/values]
            EndType
            </summary>
        </member>
        <member name="T:Roslyn.Services.InteractiveHostProcess">
            <summary>
            Represents a process that hosts an interactive session.
            </summary>
            <remarks>
            Handles spawning of the host process and communication between the local callers and the remote session.
            </remarks>
        </member>
        <member name="M:Roslyn.Services.InteractiveHostProcess.ExecuteAsync(System.String)">
            <summary>
            Asynchronously executes given code in the remote interactive session.
            </summary>
            <param name="code">The code to execute.</param>
            <remarks>
            This method is thread safe. References can be added and source code executed in parallel. 
            The operations are serialized to UI thread in the remote process in first come first served order.
            </remarks>
        </member>
        <member name="M:Roslyn.Services.InteractiveHostProcess.ExecuteFileAsync(System.String)">
            <summary>
            Asynchronously executes given code in the remote interactive session.
            </summary>
            <param name="path">The file to execute.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="path"/> is null.</exception>
            <remarks>
            This method is thread safe. All session operations are serialized to UI thread in the remote process in first come first served order.
            </remarks>
        </member>
        <member name="M:Roslyn.Services.InteractiveHostProcess.AddReferenceAsync(System.String)">
            <summary>
            Asynchronously adds a reference to the set of available references for next submission.
            </summary>
            <param name="reference">The reference to add.</param>
            <remarks>
            This method is thread safe. All session operations are serialized to UI thread in the remote process in first come first served order.
            </remarks>
        </member>
        <member name="M:Roslyn.Services.InteractiveHostProcess.SetPathsAsync(Roslyn.Compilers.ReadOnlyArray{System.String},Roslyn.Compilers.ReadOnlyArray{System.String},System.String)">
            <summary>
            Sets the current session's search paths and base directory.
            </summary>
        </member>
        <member name="T:Roslyn.Services.InteractiveHostService">
            <summary>
            A remote singleton server-activated object that lives in the interactive host process and controls it.
            </summary>
        </member>
        <member name="M:Roslyn.Services.InteractiveHostService.RunServer(System.String,System.String,System.Int32)">
            <summary>
            Implements remote server.
            </summary>
        </member>
        <member name="M:Roslyn.Services.InteractiveHostService.InitializeContextAsync(Roslyn.Services.RemoteAsyncOperation{Roslyn.Services.RemoteExecutionResult},System.String,System.Boolean)">
            <summary>
            Reads given initialization file (.rsp) and loads and executes all assembly references and files, respectively specified in it.
            Execution is performed on the UI thread.
            </summary>
        </member>
        <member name="M:Roslyn.Services.InteractiveHostService.AddReferenceAsync(Roslyn.Services.RemoteAsyncOperation{System.Boolean},System.String)">
            <summary>
            Adds an assembly reference to the current session.
            </summary>
        </member>
        <member name="M:Roslyn.Services.InteractiveHostService.ExecuteAsync(Roslyn.Services.RemoteAsyncOperation{Roslyn.Services.RemoteExecutionResult},System.String)">
            <summary>
            Executes given script snippet on the UI thread in the context of the current session.
            </summary>
        </member>
        <member name="M:Roslyn.Services.InteractiveHostService.ExecuteFileAsync(Roslyn.Services.RemoteAsyncOperation{Roslyn.Services.RemoteExecutionResult},System.String)">
            <summary>
            Executes given script file on the UI thread in the context of the current session.
            </summary>
        </member>
        <member name="M:Roslyn.Services.InteractiveHostService.InitializeContext(System.String,System.Boolean)">
            <summary>
            Loads references, set options and execute files specified in the initialization file.
            Also prints logo unless <paramref name="isRestarting"/> is true.
            </summary>
        </member>
        <member name="M:Roslyn.Services.InteractiveHostService.ExecuteFile(System.String)">
            <summary>
            Executes specified script file as a submission.
            </summary>
            <param name="fullPath">Full source path.</param>
            <returns>True if the code has been executed. False if the code doesn't compile.</returns>
            <remarks>
            All errors are written to the error output stream.
            Uses source search paths to resolve unrooted paths.
            </remarks>
        </member>
        <member name="M:Roslyn.Services.InteractiveHostService.Execute(System.String)">
            <summary>
            Executes specified code.
            </summary>
            <param name="text">Source code.</param>
            <returns>True if the code has been executed. False if the code doesn't compile.</returns>
            <remarks>
            All errors are written to the error output stream.
            The resulting value (if any) is formatted and printed to the output stream.
            </remarks>
        </member>
        <member name="F:Roslyn.Services.InteractiveHostService.ErrorMode.SEM_FAILCRITICALERRORS">
            <summary>
            Use the system default, which is to display all error dialog boxes.
            </summary>
        </member>
        <member name="F:Roslyn.Services.InteractiveHostService.ErrorMode.SEM_NOGPFAULTERRORBOX">
            <summary>
            The system does not display the critical-error-handler message box. Instead, the system sends the error to the calling process.
            Best practice is that all applications call the process-wide SetErrorMode function with a parameter of SEM_FAILCRITICALERRORS at startup. 
            This is to prevent error mode dialogs from hanging the application.
            </summary>
        </member>
        <member name="F:Roslyn.Services.InteractiveHostService.ErrorMode.SEM_NOALIGNMENTFAULTEXCEPT">
            <summary>
            The system automatically fixes memory alignment faults and makes them invisible to the application. 
            It does this for the calling process and any descendant processes. This feature is only supported by 
            certain processor architectures. For more information, see the Remarks section.
            After this value is set for a process, subsequent attempts to clear the value are ignored.
            </summary>
        </member>
        <member name="F:Roslyn.Services.InteractiveHostService.ErrorMode.SEM_NOOPENFILEERRORBOX">
            <summary>
            The system does not display a message box when it fails to find a file. Instead, the error is returned to the calling process.
            </summary>
        </member>
        <member name="T:Roslyn.Services.IRepl">
            <summary>
            Provides basic REPL functionality.
            </summary>
        </member>
        <member name="M:Roslyn.Services.RemoteAsyncOperation`1.Completed(`0)">
            <summary>
            Might be called remotely from the service.
            </summary>
            <returns>Returns true if the operation hasn't been completed until this call.</returns>
        </member>
        <member name="F:Roslyn.Services.RemoteExecutionResult.NewSourcePaths">
            <summary>
            New value of source search paths after execution, or null if not changed since the last execution.
            </summary>
        </member>
        <member name="F:Roslyn.Services.RemoteExecutionResult.NewReferencePaths">
            <summary>
            New value of reference search paths after execution, or null if not changed since the last execution.
            </summary>
        </member>
        <member name="F:Roslyn.Services.RemoteExecutionResult.NewWorkingDirectory">
            <summary>
            New value of working directory in the remote process after execution, or null if not changed since the last execution.
            </summary>
        </member>
        <member name="F:Roslyn.Services.RemoteExecutionResult.ResolvedPath">
            <summary>
            Resolved path if applicable. Used by ExecuteFile.
            </summary>
        </member>
        <member name="T:Roslyn.Services.SearchPaths">
            <summary>
            Search path list facade that displays nicely in Interactive Window.
            </summary>
        </member>
        <member name="T:Roslyn.Services.SynchronizedVersionedList`1">
            <summary>
            Synchronized list that tracks its version.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Internal.Log.TraceLogger">
            <summary>
            Implementation of ILogger that produce timing debug output
            </summary>
        </member>
        <member name="M:Roslyn.Services.Internal.Log.TraceLogger.IsVerbose">
            <summary>
            trace logger always uses verbose mode
            </summary>
        </member>
        <member name="T:Roslyn.Services.ProjectInfo">
            <summary>
            A class that represents all the arguments necessary to create a new project instance.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ProjectInfo.Id">
            <summary>
            The unique Id of the project.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ProjectInfo.Version">
            <summary>
            The version of the project.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ProjectInfo.Name">
            <summary>
            The name of the project. This may differ from the project's filename.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ProjectInfo.AssemblyName">
            <summary>
            The name of the assembly that this project will create, without file extension.
            </summary>,
        </member>
        <member name="P:Roslyn.Services.ProjectInfo.Language">
            <summary>
            The language of the project.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ProjectInfo.FilePath">
            <summary>
            The path to the project file or null if there is no project file.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ProjectInfo.CompilationOptions">
            <summary>
            The initial compilation options for the project.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ProjectInfo.ParseOptions">
            <summary>
            The initial parse options for the source code documents in this project.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ProjectInfo.Documents">
            <summary>
            The list of source documents initially associated with the project.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ProjectInfo.ProjectReferences">
            <summary>
            The project references initially defined for the project.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ProjectInfo.MetadataReferences">
            <summary>
            The metadata references initially defined for the project.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ProjectInfo.FileResolver">
            <summary>
            Returns the file resolver for the project.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ProjectInfo.IsSubmission">
            <summary>
            Returns true if this is a submission project for interactive sessions.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ProjectInfo.HostObjectType">
            <summary>
            Type of the host object.
            </summary>
        </member>
        <member name="M:Roslyn.Utilities.ValueSourceExtensions.Compute``2(Roslyn.Services.Host.IValueSource{``0},System.Func{``0,System.Threading.CancellationToken,``1})">
            <summary>
            Creates a new value source that computes its value from this value source.
            </summary>
        </member>
        <member name="M:Roslyn.Utilities.ValueSourceExtensions.Compute``3(Roslyn.Services.Host.IValueSource{``0},Roslyn.Services.Host.IValueSource{``1},System.Func{``0,``1,System.Threading.CancellationToken,``2})">
            <summary>
            Creates a new value source that computes its value from this value source and an additional input value source.
            </summary>
        </member>
        <member name="M:Roslyn.Utilities.ValueSourceExtensions.RetainStrongly``1(Roslyn.Services.Host.IValueSource{``0})">
            <summary>
            Creates a new value source that remembers the value from this value source
            so it only gets computed once.
            </summary>
        </member>
        <member name="M:Roslyn.Utilities.ValueSourceExtensions.Guard``1(Roslyn.Services.Host.IValueSource{``0})">
            <summary>
            Creates a new value source that guards access to the value of this value source,
            so that only one task is computing the value at a time.
            </summary>
        </member>
        <member name="M:Roslyn.Utilities.ValueSourceExtensions.Unwrap``1(Roslyn.Services.Host.IValueSource{Roslyn.Services.Host.IValueSource{``0}})">
            <summary>
            Creates a new value source that unwraps a nested value source.
            </summary>
        </member>
        <member name="M:Roslyn.Utilities.ValueSourceExtensions.Chain``1(Roslyn.Services.Host.IValueSource{``0},Roslyn.Services.Host.IValueSource{``0})">
            <summary>
            Construct a weak chain of value-sources. The length of the chain is the number of still referenced value
            sources with unevaluated values.
            </summary>
        </member>
        <member name="M:Roslyn.Utilities.ValueSourceExtensions.GetChainLength``1(Roslyn.Services.Host.IValueSource{``0})">
            <summary>
            Determine the number of still referenced values sources in the chain with unevaluated values.
            </summary>
        </member>
        <member name="M:Roslyn.Utilities.WeakEventHandler.Create``1(System.Object,System.EventHandler{``0})">
            <summary>
            Creates a new event handler from an existing event handler that will not directly keep the handler alive,
            but instead is dependent on the lifetime of an anchor object.
            </summary>
        </member>
        <member name="F:Roslyn.Services.WorkspaceEventKind.SolutionChanged">
            <summary>
            The current solution changed for an unspecified reason.
            </summary>
        </member>
        <member name="F:Roslyn.Services.WorkspaceEventKind.SolutionAdded">
            <summary>
            A solution was added to the workspace.
            </summary>
        </member>
        <member name="F:Roslyn.Services.WorkspaceEventKind.SolutionRemoved">
            <summary>
            The current solution was removed from the workspace.
            </summary>
        </member>
        <member name="F:Roslyn.Services.WorkspaceEventKind.SolutionCleared">
            <summary>
            The current solution was cleared of all projects and documents.
            </summary>
        </member>
        <member name="F:Roslyn.Services.WorkspaceEventKind.SolutionReloaded">
            <summary>
            The current solution was reloaded.
            </summary>
        </member>
        <member name="F:Roslyn.Services.WorkspaceEventKind.ProjectAdded">
            <summary>
            A project was added to the current solution.
            </summary>
        </member>
        <member name="F:Roslyn.Services.WorkspaceEventKind.ProjectRemoved">
            <summary>
            A project was removed from the current solution.
            </summary>
        </member>
        <member name="F:Roslyn.Services.WorkspaceEventKind.ProjectUpdated">
            <summary>
            A project in the current solution was updated.
            </summary>
        </member>
        <member name="F:Roslyn.Services.WorkspaceEventKind.ProjectReloaded">
            <summary>
            A project in the current solution was reloaded.
            </summary>
        </member>
        <member name="F:Roslyn.Services.WorkspaceEventKind.DocumentAdded">
            <summary>
            A document was added to the current solution.
            </summary>
        </member>
        <member name="F:Roslyn.Services.WorkspaceEventKind.DocumentRemoved">
            <summary>
            A document was removed from the current solution.
            </summary>
        </member>
        <member name="F:Roslyn.Services.WorkspaceEventKind.DocumentReloaded">
            <summary>
            A document in the current solution was reloaded.
            </summary>
        </member>
        <member name="F:Roslyn.Services.WorkspaceEventKind.DocumentUpdated">
            <summary>
            A document in the current solution was updated.
            </summary>
        </member>
        <member name="F:Roslyn.Services.WorkspaceEventKind.DocumentOpened">
            <summary>
            A document in the current solution as opened.
            </summary>
        </member>
        <member name="F:Roslyn.Services.WorkspaceEventKind.DocumentClosed">
            <summary>
            A document in the current solution as closed.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.CostBasedCache`1">
            <summary>
            An object cache that basis its retention policy on a costing algorithm per object 
            with a preferences to keep most recently accessed instances.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.IObjectCache`1">
            <summary>
            An object cache controls the lifetime of an object by holding a reference to it,
            keeping the garbage collector from collecting it. 
            
            The cache uses a heuristic to determine how many objects to keep alive, which 
            to evict from the cache and when to evict them. 
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.IObjectCache`1.AddOrAccess(`0,System.Action{`0})">
            <summary>
            Add an object to the cache, or notify the cache that the object was recently used.
            </summary>
            <param name="instance">The object to add or notify.</param>
            <param name="onEvicted">An action to take when the object is evicted.</param>
            <returns>True if the instance was added.</returns>
        </member>
        <member name="M:Roslyn.Services.Host.IObjectCache`1.EvictAll">
            <summary>
            Evict all the objects from the cache.
            </summary>
        </member>
        <member name="M:Roslyn.Utilities.RemoteServices.StartRemoteServicesProcess">
            <summary>
            Start the remote services process
            </summary>
        </member>
        <member name="M:Roslyn.Utilities.RemoteServices.Main(System.String[])">
            <summary>
            Entry point for remote service process
            </summary>
        </member>
        <member name="M:Roslyn.Utilities.RemoteServices.Shutdown">
            <summary>
            Shuts down the remote services process.
            </summary>
        </member>
        <member name="M:Roslyn.Utilities.RemoteServices.Initialize(System.Int32)">
            <summary>
            Initializes the remote services process.
            </summary>
        </member>
        <member name="P:Roslyn.Utilities.RemoteServices.Instance">
            <summary>
            The single remote services instance. This is for client-side access.
            </summary>
        </member>
        <member name="P:Roslyn.Services.Shared.Extensions.Indentation.LinePosition">
            <summary>The raw character position of the indentation in the in the line. This will
            range between [0, line.Length).</summary> 
        </member>
        <member name="P:Roslyn.Services.Shared.Extensions.Indentation.Column">
            <summary>The column position of the indentation in the line.  This will be equal to the
            LinePosition if the indentation is all spaces, but it can greater if there are tabs in
            the indent that expand out to more than 1 space.</summary>
        </member>
        <member name="T:Roslyn.Services.FindReferences.FindReferencesProgress">
            <summary>
            A class that reports the current progress made when finding references to symbols.  
            </summary>
        </member>
        <member name="T:Roslyn.Services.ReferencedSymbol">
            <summary>
            Represents a single result of the call to the synchronous
            IFindReferencesService.FindReferences method. Finding the references to a symbol will result
            in a set of definitions being returned (containing at least the symbol requested) as well as
            any references to those definitions in the source. Multiple definitions may be found due to
            how C# and VB allow a symbol to be both a definition and a reference at the same time (for
            example, a method which implements an interface method).
            </summary>
        </member>
        <member name="P:Roslyn.Services.ReferencedSymbol.Definition">
            <summary>
            The symbol definition that these are references to.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ReferencedSymbol.Locations">
            <summary>
            The set of reference locations in the solution.
            </summary>
        </member>
        <member name="F:Roslyn.Services.FindReferences.ReferenceFinder.DefaultReferenceFinders">
            <summary>
            The list of common reference finders.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISymbolDeclarationService.GetDeclarations(Roslyn.Compilers.Common.ISymbol)">
            <summary>
            Given a symbol in source, returns the syntax nodes that compromise its declarations.
            This differs from symbol.Locations in that Locations returns a list of ILocations that
            normally correspond to the name node of the symbol.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Extensions.INamespaceSymbolExtensions.FindNamespaces(Roslyn.Compilers.Common.INamespaceSymbol,System.String,System.Threading.CancellationToken)">
            <summary>
            Searches the namespace for namespaces with the provided name.
            </summary>
        </member>
        <member name="M:Roslyn.Services.LanguageServices.ISemanticFactsService.IsWrittenTo(Roslyn.Compilers.Common.ISemanticModel,Roslyn.Compilers.Common.CommonSyntaxNode,System.Threading.CancellationToken)">
            <summary>
            True if a write is performed to the given expression.  Note: reads may also be performed
            to the expression as well.  For example, "++a".  In this expression 'a' is both read from
            and written to.
            </summary>
        </member>
        <member name="M:Roslyn.Services.LanguageServices.ISemanticFactsService.IsOnlyWrittenTo(Roslyn.Compilers.Common.ISemanticModel,Roslyn.Compilers.Common.CommonSyntaxNode,System.Threading.CancellationToken)">
            <summary>
            True if a write is performed to the given expression.  Note: unlike IsWrittenTo, this
            will not return true if reads are performed on the expression as well.  For example,
            "++a" will return 'false'.  However, 'a' in "out a" or "a = 1" will return true.
            </summary>
        </member>
        <member name="P:Roslyn.Services.LanguageServices.ISemanticFactsService.SupportsImplicitInterfaceImplementation">
            <summary>
            True if this language supports implementing an interface by signature only. If false,
            implementations must specific explicitly which symbol they're implementing.
            </summary>
        </member>
        <member name="P:Roslyn.Services.LanguageServices.ISemanticFactsService.ExposesAnonymousFunctionParameterNames">
            <summary>
            True if anonymous functions in this language have signatures that include named
            parameters that can be referenced later on when the function is invoked.  Or, if the
            anonymous function is simply a signature that will be assigned to a delegate, and the
            delegate's parameter names are used when invoking.  
            
            For example, in VB one can do this: 
            
            dim v = Sub(x as Integer) Blah()
            v(x:=4)
            
            However, in C# that would need to be:
            
            Action&lt;int&gt; v = (int x) => Blah();
            v(obj:=4)
            
            Note that in VB one can access 'x' outside of the declaration of the anonymous type.
            While in C# 'x' can only be accessed within the anonymous type.
            </summary>
        </member>
        <member name="M:Roslyn.Services.LanguageServices.ISyntaxFactsService.IsTypeCharacter(System.Char)">
            <summary>
            Returns true if the given character is a character which may be included in an
            identifier to specify the type of a variable.
            </summary>
        </member>
        <member name="P:Roslyn.Services.Shared.Utilities.Indentation.LinePosition">
            <summary>The raw character position of the indentation in the in the line. This will
            range between [0, line.Length).</summary> 
        </member>
        <member name="P:Roslyn.Services.Shared.Utilities.Indentation.Column">
            <summary>The column position of the indentation in the line.  This will be equal to the
            LinePosition if the indentation is all spaces, but it can greater if there are tabs in
            the indent that expand out to more than 1 space.</summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Utilities.StringBreaker.BreakIntoCharacterParts(System.String)">
            <summary>
            Breaks an identifier string into constituent parts.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Utilities.StringBreaker.BreakIntoWordParts(System.String)">
            <summary>
            Breaks an identifier string into constituent parts.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Internal.Log.FunctionId">
            <summary>
            Enum to uniquely identify each function location
            </summary>
        </member>
        <member name="T:Roslyn.Services.Internal.Log.Logger">
            <summary>
            provide a way to log activities to various back end such as etl, code marker and etc
            </summary>
        </member>
        <member name="F:Roslyn.Services.Internal.Log.Logger.lastUniqueBlockId">
            <summary>
            next unique block id that will be given to each LogBlock
            </summary>
        </member>
        <member name="M:Roslyn.Services.Internal.Log.Logger.SetLogger(Roslyn.Services.Internal.Log.ILogger)">
            <summary>
            give a way to explicitly set/replace the logger
            </summary>
        </member>
        <member name="M:Roslyn.Services.Internal.Log.Logger.GetLogger">
            <summary>
            ensure we have a logger by putting one from workspace service if one is not there already.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Internal.Log.Logger.Log(Roslyn.Services.Internal.Log.FeatureId,Roslyn.Services.Internal.Log.FunctionId,System.String)">
            <summary>
            log a specific event with a simple context message which should be very cheap to create
            </summary>
        </member>
        <member name="M:Roslyn.Services.Internal.Log.Logger.Log(Roslyn.Services.Internal.Log.FeatureId,Roslyn.Services.Internal.Log.FunctionId,System.Func{System.String})">
            <summary>
            log a specific event with a context message that will only be created when it is needed.
            the messageGetter should be cheap to create. in another word, it shouldn't capture any locals
            </summary>
        </member>
        <member name="M:Roslyn.Services.Internal.Log.Logger.Log``1(Roslyn.Services.Internal.Log.FeatureId,Roslyn.Services.Internal.Log.FunctionId,System.Func{``0,System.String},``0)">
            <summary>
            log a specific event with a context message that requires some arguements to be created when requested.
            given argments will be passed to the messageGetter so that it can create the context message without requiring lifted locals
            </summary>
        </member>
        <member name="M:Roslyn.Services.Internal.Log.Logger.Log``2(Roslyn.Services.Internal.Log.FeatureId,Roslyn.Services.Internal.Log.FunctionId,System.Func{``0,``1,System.String},``0,``1)">
            <summary>
            log a specific event with a context message that requires some arguements to be created when requested.
            given argments will be passed to the messageGetter so that it can create the context message without requiring lifted locals
            </summary>
        </member>
        <member name="M:Roslyn.Services.Internal.Log.Logger.Log``3(Roslyn.Services.Internal.Log.FeatureId,Roslyn.Services.Internal.Log.FunctionId,System.Func{``0,``1,``2,System.String},``0,``1,``2)">
            <summary>
            log a specific event with a context message that requires some arguements to be created when requested.
            given argments will be passed to the messageGetter so that it can create the context message without requiring lifted locals
            </summary>
        </member>
        <member name="M:Roslyn.Services.Internal.Log.Logger.Log``4(Roslyn.Services.Internal.Log.FeatureId,Roslyn.Services.Internal.Log.FunctionId,System.Func{``0,``1,``2,``3,System.String},``0,``1,``2,``3)">
            <summary>
            log a specific event with a context message that requires some arguements to be created when requested.
            given argments will be passed to the messageGetter so that it can create the context message without requiring lifted locals
            </summary>
        </member>
        <member name="M:Roslyn.Services.Internal.Log.Logger.GetNextUniqueBlockId">
            <summary>
            return next unique pair id
            </summary>
        </member>
        <member name="M:Roslyn.Services.Internal.Log.Logger.LogBlock(Roslyn.Services.Internal.Log.FeatureId,Roslyn.Services.Internal.Log.FunctionId,System.String)">
            <summary>
            simplest way to log a start and end pair with a simple context message which should be very cheap to create
            </summary>
        </member>
        <member name="M:Roslyn.Services.Internal.Log.Logger.LogBlock(Roslyn.Services.Internal.Log.FeatureId,Roslyn.Services.Internal.Log.FunctionId,System.Func{System.String})">
            <summary>
            log a start and end pair with a context message that will only be created when it is needed.
            the messageGetter should be cheap to create. in another word, it shouldn't capture any locals
            </summary>
        </member>
        <member name="M:Roslyn.Services.Internal.Log.Logger.LogBlock``1(Roslyn.Services.Internal.Log.FeatureId,Roslyn.Services.Internal.Log.FunctionId,System.Func{``0,System.String},``0)">
            <summary>
            log a start and end pair with a context message that requires some arguements to be created when requested.
            given argments will be passed to the messageGetter so that it can create the context message without requiring lifted locals
            </summary>
        </member>
        <member name="M:Roslyn.Services.Internal.Log.Logger.LogBlock``2(Roslyn.Services.Internal.Log.FeatureId,Roslyn.Services.Internal.Log.FunctionId,System.Func{``0,``1,System.String},``0,``1)">
            <summary>
            log a start and end pair with a context message that requires some arguements to be created when requested.
            given argments will be passed to the messageGetter so that it can create the context message without requiring lifted locals
            </summary>
        </member>
        <member name="M:Roslyn.Services.Internal.Log.Logger.LogBlock``3(Roslyn.Services.Internal.Log.FeatureId,Roslyn.Services.Internal.Log.FunctionId,System.Func{``0,``1,``2,System.String},``0,``1,``2)">
            <summary>
            log a start and end pair with a context message that requires some arguements to be created when requested.
            given argments will be passed to the messageGetter so that it can create the context message without requiring lifted locals
            </summary>
        </member>
        <member name="M:Roslyn.Services.Internal.Log.Logger.LogBlock``4(Roslyn.Services.Internal.Log.FeatureId,Roslyn.Services.Internal.Log.FunctionId,System.Func{``0,``1,``2,``3,System.String},``0,``1,``2,``3)">
            <summary>
            log a start and end pair with a context message that requires some arguements to be created when requested.
            given argments will be passed to the messageGetter so that it can create the context message without requiring lifted locals
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Extensions.CommonSyntaxNodeExtensions.IsChildNode``1(Roslyn.Compilers.Common.CommonSyntaxNode,System.Func{``0,Roslyn.Compilers.Common.CommonSyntaxNode})">
            <summary>
            Returns true if is a given token is a child token of of a certain type of parent node.
            </summary>
            <typeparam name="TParent">The type of the parent node.</typeparam>
            <param name="node">The node that we are testing.</param>
            <param name="childGetter">A function that, when given the parent node, returns the child token we are interested in.</param>
        </member>
        <member name="M:Roslyn.Services.Shared.Extensions.CommonSyntaxNodeExtensions.IsFoundUnder``1(Roslyn.Compilers.Common.CommonSyntaxNode,System.Func{``0,Roslyn.Compilers.Common.CommonSyntaxNode})">
            <summary>
            Returns true if this node is found underneat the specified child in the given parent.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Extensions.CommonSyntaxNodeExtensions.AddAnnotations(Roslyn.Compilers.Common.CommonSyntaxNode,System.Collections.Generic.IEnumerable{System.Tuple{Roslyn.Compilers.Common.CommonSyntaxToken,Roslyn.Compilers.SyntaxAnnotation}})">
            <summary>
            create a new root node from the given root after adding annotations to the tokens
            
            tokens should belong to the given root
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Extensions.CommonSyntaxNodeExtensions.AddAnnotations(Roslyn.Compilers.Common.CommonSyntaxNode,System.Collections.Generic.IEnumerable{System.Tuple{Roslyn.Compilers.Common.CommonSyntaxNode,Roslyn.Compilers.SyntaxAnnotation}})">
            <summary>
            create a new root node from the given root after adding annotations to the nodes
            
            nodes should belong to the given root
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Extensions.IProjectExtensions.FindNamespacesWithAccessibleTypeName(Roslyn.Services.IProject,Roslyn.Compilers.Common.ISymbol,System.String,System.Int32,System.Threading.CancellationToken)">
            <summary>
            Searches namespaceSymbol (and all descendants) for types with the provided name.  If
            arity is negative then this will find types with any arity, otherwise the type's arity
            must match.  The namespaces containing the type will be returned.  Nested types will not
            be found with this search.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Extensions.ISemanticModelExtensions.GetSymbolInfo(Roslyn.Compilers.Common.ISemanticModel,Roslyn.Compilers.Common.CommonSyntaxToken,System.Threading.CancellationToken)">
            <summary>
            Gets semantic information, such as type, symbols, and diagnostics, about the parent of a token.
            </summary>
            <param name="semanticModel">The SemanticModel object to get semantic information
            from.</param>
            <param name="token">The token to get semantic information from. This must be part of the
            syntax tree associated with the binding.</param>
            <param name="cancellationToken">A cancellation token.</param>
        </member>
        <member name="M:Roslyn.Services.Shared.Extensions.ISemanticModelExtensions.GetSymbolInfo(Roslyn.Compilers.Common.ISemanticModel,Roslyn.Compilers.Common.CommonSyntaxNodeOrToken,System.Threading.CancellationToken)">
            <summary>
            Gets semantic information, such as type, symbols, and diagnostics, about a node or
            token.
            </summary>
            <param name="semanticModel">The SemanticModel object to get semantic information
            from.</param>
            <param name="nodeOrToken">The node or token to inquire about. If this a token, the
            parent of the token is queried.</param>
            <param name="cancellationToken">Cancellation token.</param>
        </member>
        <member name="M:Roslyn.Services.Shared.Extensions.CommonSyntaxTreeExtensions.GetTouchingWord(Roslyn.Compilers.Common.CommonSyntaxTree,System.Int32,Roslyn.Services.LanguageServices.ISyntaxFactsService,System.Threading.CancellationToken,System.Boolean)">
            <summary>
            Returns the identifier, keyword, contextual keyword or preprocessor keyword touching this
            position, or a token of Kind = None if the caret is not touching either.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Extensions.CommonSyntaxTreeExtensions.WithChange(Roslyn.Compilers.Common.CommonSyntaxTree,Roslyn.Compilers.TextChange,System.Threading.CancellationToken)">
            <summary>
            Produces a new syntax tree that is the result of the text change applied to the provided
            syntax tree.  Note: this method can be very expensive as it currently will make a copy of
            the entire syntax tree text.  Making this more efficient would be a very nice thing.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Extensions.ITextExtensions.GetLeadingWhitespaceOfLineAtPosition(Roslyn.Compilers.IText,System.Int32)">
            <summary>
            Returns the leading whitespace of the line located at the specified position in the given snapshot.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Extensions.ITextLineExtensions.GetFirstNonWhitespacePosition(Roslyn.Compilers.ITextLine)">
            <summary>
            Returns the first non-whitespace position on the given line, or null if 
            the line is empty or contains only whitespace.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Extensions.ITextLineExtensions.GetFirstNonWhitespaceOffset(Roslyn.Compilers.ITextLine)">
            <summary>
            Returns the first non-whitespace position on the given line as an offset
            from the start of the line, or null if the line is empty or contains only
            whitespace.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Extensions.ITextLineExtensions.GetLastNonWhitespacePosition(Roslyn.Compilers.ITextLine)">
            <summary>
            Returns the last non-whitespace position on the given line, or null if 
            the line is empty or contains only whitespace.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Extensions.ITextLineExtensions.IsEmptyOrWhitespace(Roslyn.Compilers.ITextLine)">
            <summary>
            Determines whether the specified line is empty or contains whitespace only.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Extensions.ITextLineExtensions.GetIndentationFromLinePosition(Roslyn.Compilers.ITextLine,System.Int32,System.Int32)">
            <summary>
            this is what the editor thinks as a space character
            c == '\t' || (int)c == 0x200B || char.GetUnicodeCategory == UnicodeCategory.SpaceSeparator;
            
            TODO : 
            once compiler exposes API for a caller to determine whether given char is considered as a whitespace or space
            in language, we need to conbine that information with editor's to find out correct indentation.
            </summary>
        </member>
        <member name="F:Roslyn.Services.Shared.Extensions.SymbolDisplayFormats.NameFormat">
            <summary>
            Standard format for displaying to the user.
            </summary>
            <remarks>
            No return type.
            </remarks>
        </member>
        <member name="F:Roslyn.Services.Shared.Extensions.SymbolDisplayFormats.SignatureFormat">
            <summary>
            Contains enough information to determine whether two symbols have the same signature.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Utilities.EnumValueUtilities.GetNextEnumValue(Roslyn.Compilers.Common.INamedTypeSymbol,System.Threading.CancellationToken)">
            <summary>
            Determines, using heuristics, what the next likely value is in this enum.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Utilities.IntegerUtilities.Convert(System.Int64,Roslyn.Compilers.SpecialType)">
            <summary>
            Helper as VB's CType doesn't work without arithmetic overflow.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Shared.Utilities.Matcher`1">
            <summary>
            Helper class to allow one to do simple regular expressions over a sequence of objects (as
            opposed to a sequence of characters).
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Utilities.Matcher.Repeat``1(Roslyn.Services.Shared.Utilities.Matcher{``0})">
            <summary>
            Matcher equivalent to (m*)
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Utilities.Matcher.OneOrMore``1(Roslyn.Services.Shared.Utilities.Matcher{``0})">
            <summary>
            Matcher equivalent to (m+)
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Utilities.Matcher.Choice``1(Roslyn.Services.Shared.Utilities.Matcher{``0},Roslyn.Services.Shared.Utilities.Matcher{``0})">
            <summary>
            Matcher equivalent to (m_1|m_2)
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Utilities.Matcher.Sequence``1(Roslyn.Services.Shared.Utilities.Matcher{``0}[])">
            <summary>
            Matcher equivalent to (m_1 ... m_n)
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Utilities.Matcher.Single``1(System.Func{``0,System.Boolean},System.String)">
            <summary>
            Matcher that matches an element if the provide predicate returns true.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Utilities.NameGenerator.EnsureUniqueness(System.Collections.Generic.IList{System.String},System.Collections.Generic.IList{System.Boolean},System.Func{System.String,System.Boolean},System.Boolean)">
            <summary>
            Ensures that any 'names' is unique and does not collide with any other name.  Names that
            are marked as IsFixed can not be touched.  This does mean that if there are two names
            that are the same, and both are fixed that you will end up with non-unique names at the
            end.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Utilities.NameGenerator.EnsureUniqueness(System.String,System.Collections.Generic.IEnumerable{System.String},System.Boolean)">
            <summary>
            Transforms baseName into a name that does not conflict with any name in 'reservedNames'
            </summary>
        </member>
        <member name="T:Roslyn.Services.Shared.Utilities.ProgressTracker">
            <summary>
            Utility class that can be used to track the progress of an operation in a threadsafe manner.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Shared.Utilities.SymbolEquivalenceComparer">
            <summary>
            Provides a way to test two symbols for equivalence.  While there are ways to ask for
            different sorts of equivalence, the following must hold for two symbols to be considered
            equivalent.
            
            1) The kinds of the two symbols must match.
            
            2) The names of the two symbols must match.
            
            3) The arity of the two symbols must match.
            
            4) If the symbols are methods or parameterized properties, then the signatures of the two
            symbols must match.
            
            5) Both symbols must be definitions or must be instantiations.  If they are instantiations,
            then they must be instantiated in the same manner.
            
            6) The containing symbols of the two symbols must be equivalent.
            
            Note: equivalence does not concern itself with whole symbols.  Two types are considered
            equivalent if the above hold, even if one type has different members than the other.  Note:
            type parameters, and signature parameters are not considered 'children' when comparing
            symbols.
            
            Options are provided to tweak the above slightly.  For example, by default, symbols are
            equivalent only if they come from the same assembly.  However, one can ask if two symbols are
            equivalent even if their assemblies differ.
            </summary>
        </member>
        <member name="T:Roslyn.Services.LanguageServices.ITypeInferenceService">
            <summary>
            Helper service for telling you what type can be inferred to be viable in a particular
            location in code.  This is useful for features that are starting from code that doesn't bind,
            but would like to know type that code should be in the location that it can be found in.  For
            example:
            
              int i = Here(); 
            
            If 'Here()' doesn't bind, then this class can be used to say that it is currently in a
            location whose type has been inferred to be 'int' from the surrounding context.  Note: this
            is simply a best effort guess.  'byte/short/etc.' as well as any user convertible types to
            int would also be valid here, however 'int' seems the most reasonable when considering user
            intuition.
            </summary>
        </member>
        <member name="M:Roslyn.Services.WorkspaceExtensions.ApplyChangesAsync(Roslyn.Services.IWorkspace,Roslyn.Services.ISolution,Roslyn.Services.ISolution,System.String,System.Threading.CancellationToken)">
            <summary>
            Apply changed solution to workspace asynchronously.
            </summary>
        </member>
        <member name="M:Roslyn.Services.WorkspaceExtensions.CreateDocumentId(Roslyn.Services.ProjectId,System.String,System.Collections.Generic.IEnumerable{System.String})">
            <summary>
            Create a new DocumentId based on a name and optional folders
            </summary>
        </member>
        <member name="M:Roslyn.Services.WorkspaceExtensions.UpdateDocument(Roslyn.Services.IWorkspace,Roslyn.Services.IDocument,System.Threading.CancellationToken)">
            <summary>
            Update the workspace so that the document with the Id of <paramref name="newDocument"/>
            has the text of newDocument.  If the document is open, then this method will determine a
            minimal set of changes to apply to the document.
            </summary>
        </member>
        <member name="M:Roslyn.Services.WorkspaceExtensions.UpdateDocument(Roslyn.Services.IWorkspace,Roslyn.Services.DocumentId,System.Collections.Generic.IEnumerable{Roslyn.Compilers.TextChange},System.Threading.CancellationToken)">
            <summary>
            Update the workspace so that the document with the Id has the text changes
            </summary>
        </member>
        <member name="M:Roslyn.Services.WorkspaceExtensions.UpdateDocument(Roslyn.Services.IWorkspace,Roslyn.Services.DocumentId,Roslyn.Compilers.TextChange,System.Threading.CancellationToken)">
            <summary>
            Update the workspace so that the document with the Id has the text changes
            </summary>
        </member>
        <member name="T:Roslyn.Utilities.SerializableBytes">
            <summary>
            A class to represent text data that can be serialized w/o using strings.
            </summary>
        </member>
        <member name="T:Roslyn.Utilities.SerializableText">
            <summary>
            A class to represent text data that can be serialized w/o using strings.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.PersistenceServiceFactory">
            <summary>
            A service that enables storing and retrieving of information associated with solutions,
            projects or documents across runtime sessions.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.IBackgroundCompiler">
            <summary>
            Compiles projects of IWorkspace's solution asynchronously.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.BackgroundCompiler.AddDocument(Roslyn.Services.DocumentId)">
            <summary>
            Add document to list of documents identifying projects that should be built in the background.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.BackgroundCompiler.RemoveDocument(Roslyn.Services.DocumentId)">
            <summary>
            Remove document to list of documents identifying projects that should be built in the background.
            If all documents associated with a project are removed, the project will no longer be built in the background.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.BackgroundCompiler.Rebuild(Roslyn.Services.ProjectId)">
            <summary>
            Rebuild projects in the background. If a background build is already underway it will be cancelled and a
            new build started.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.IBackgroundCompilerFactory.CreateBackgroundCompiler(Roslyn.Services.IWorkspace)">
            <summary>
            Creates a new background compiler that builds projects of the specified workspace asynchronously.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.IBackgroundParser.Start">
            <summary>
            Put the background parser in the started state. When started calls to Parse will cause
            parses to run.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.IBackgroundParser.Stop">
            <summary>
            Put the background parser in the stopped state. When stopped calls to Parse will not
            cause parses to run.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.IBackgroundParser.Parse(Roslyn.Services.IDocument)">
            <summary>
            Parse the document in the background.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.IBackgroundParser.CancelParse(Roslyn.Services.IDocument)">
            <summary>
            Cancel any queued parse work for the specified document.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.IBackgroundParser.CancelAllParses">
            <summary>
            Cancel all running and queued parse work.
            </summary>
        </member>
        <member name="P:Roslyn.Services.Host.IBackgroundParser.IsStarted">
            <summary>
            True if the background parser is in the started state. This does not mean any parses are
            actually in progress.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.IBackgroundParserFactory.CreateBackgroundParser(Roslyn.Services.IWorkspace)">
            <summary>
            Creates a new background parser that parses documents asynchronously.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.ExportWorkspaceServiceFactoryAttribute">
            <summary>
            Specifies the exact type of the service exported by the IWorkspaceService.
            </summary>
        </member>
        <member name="T:Roslyn.Services.CompilationTracker">
            <summary>
            Tracks the changes made to a project and provides the facility to get a lazily built
            compilation for that project.  As the compilation is being built, the partial results are
            stored as well so that they can be used in the 'in progress' workspace snapshot.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CompilationTracker.#ctor(Roslyn.Services.ProjectState)">
            <summary>
            Creates a tracker for the provided project.  The tracker will be in the 'empty' state
            and will have no extra information beyond the project itself.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CompilationTracker.Fork(Roslyn.Services.ProjectState,System.Func{Roslyn.Compilers.Common.CommonCompilation,System.Threading.CancellationToken,Roslyn.Compilers.Common.CommonCompilation},System.Threading.CancellationToken,System.Boolean)">
            <summary>
            Creates a new instance of the compilation info, retaining any already built
            compilation state as the now 'old' state
            </summary>
        </member>
        <member name="M:Roslyn.Services.CompilationTracker.Clone">
            <summary>
            Creates a fork with the same final project.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CompilationTracker.Copy(System.Threading.CancellationToken)">
            <summary>
            Creates a pure copy of the compilation info.  We do this so that we can have a
            version that we know isn't being changed as we observe it.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CompilationTracker.WithElevatedInProgressState(Roslyn.Services.Solution,System.Threading.CancellationToken)">
            <summary>
            Creates a new tracker that has this tracker's in progress state elevated to 'final
            state'.  If this tracker has no in progress state, then null is returned. Note: this
            must only be called on a cloned workspace snapshot (with copied trackers) so that
            the workspace is not changing while this method is executing.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CompilationTracker.GetInProgressCompilationState(Roslyn.Services.Solution,Roslyn.Services.ProjectState@,Roslyn.Compilers.Common.CommonCompilation@,Roslyn.Services.SkeletonReference@,System.Threading.CancellationToken)">
            <summary>
            Tries to get the latest snapshot of the compilation without waiting for it to be
            fully built. This method takes advantage of the progress side-effect produced during
            BuildCompilation. It will either return the already built compilation, any
            in-progress compilation or any known old compilation in that order of preference.
            The compilation state that is returned will have a compilation that is retained so
            that it cannot disappear.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CompilationTracker.TryGetCompilation(Roslyn.Compilers.Common.CommonCompilation@)">
            <summary>
            Gets the final compilation if it is available.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CompilationTracker.GetCompilation(Roslyn.Services.Solution,System.Threading.CancellationToken)">
            <summary>
            Gets or builds the compilation
            </summary>
        </member>
        <member name="M:Roslyn.Services.CompilationTracker.BuildCompilation(Roslyn.Services.Solution,System.Threading.CancellationToken)">
            <summary>
            Builds the compilation matching the project state. In the process of building, also
            produce in progress snapshots that can be accessed from other threads.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CompilationTracker.GetMetadataReference(Roslyn.Services.Solution,Roslyn.Services.ProjectState,System.Threading.CancellationToken)">
            <summary>
            Get a metadata reference to this compilation info's compilation with respect to
            another project. For cross language references produce a skeletal assembly. If the
            compilation is not available, it is built. If a skeletal assembly reference is
            needed and does not exist, it is also built.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CompilationTracker.GetInProgressMetadataReference(Roslyn.Services.Solution,Roslyn.Services.ProjectState,System.Threading.CancellationToken)">
            <summary>
            Attempts to get (without waiting) a metadata reference to a possibly in progress
            compilation. Actual compilation references are preferred over skeletal assembly
            references.  Could potentially return null if nothing can be provided.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CompilationTracker.GetSkeletonReference(Roslyn.Services.Solution,System.Threading.CancellationToken)">
            <summary>
            Gets an assembly reference to a skeletal assembly for this compilation info's
            compilation, compiling and emitting the compilation if necessary.
            </summary>
        </member>
        <member name="M:Roslyn.Services.CompilationTracker.Retain(Roslyn.Services.Solution,Roslyn.Compilers.Common.CommonCompilation)">
            <summary>
            Converts a compilation into a ICompilationRetainer employing an external compilation retention policy.
            </summary>
        </member>
        <member name="P:Roslyn.Services.CompilationTracker.HasCompilationOrIsSubmission">
            <summary>
            Returns true if this tracker currently either points to a compilation, has an in-progress
            compilation being computed, or has a skeleton reference.  Note: this is simply a weak
            statement about the tracker at this exact moment in time.  Immediately after this returns
            the tracker might change and may no longer have a final compilation (for example, if the
            retainer let go of it) or might not have an in-progress compilation (for example, if the
            background compiler finished with it).
            
            Because of the above limitations, this should only be used by clients as a weak form of
            information about the tracker.  For example, a client may see that a tracker has no
            compilation and may choose to throw it away knowing that it could be reconstructed at a
            later point if necessary.
            </summary>
        </member>
        <member name="T:Roslyn.Services.CompilationTracker.State">
            <summary>
            This base class guards all the state for the implementation.
            </summary>
        </member>
        <member name="T:Roslyn.Services.IDocument">
            <summary>
            Represents a document that is part of a solution and project. Equivalent to a single .cs or
            .vb file, but abstracted away from the notion of a file system.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IDocument.TryGetText(Roslyn.Compilers.IText@)">
            <summary>
            Get the current text for the document if it is already loaded and available.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IDocument.GetText(System.Threading.CancellationToken)">
            <summary>
            Get the current text for the document. This method may do work to load the text from
            disk (or other source) the first time it is called.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IDocument.GetTextAsync(System.Threading.CancellationToken)">
            <summary>
            Gets the current text for the document asynchronously.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IDocument.TryGetSyntaxTree(Roslyn.Compilers.Common.CommonSyntaxTree@)">
            <summary>
            Get the current syntax tree for the document if the text is already loaded and the tree
            is already parsed.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IDocument.GetSyntaxTree(System.Threading.CancellationToken)">
            <summary>
            Gets the SyntaxTree corresponding to this document. This method may do work to load the
            text from disk and parse it into a syntax tree.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IDocument.GetSyntaxTreeAsync(System.Threading.CancellationToken)">
            <summary>
            Gets the SyntaxTree for this document asynchronously.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IDocument.TryGetSyntaxRoot(Roslyn.Compilers.Common.CommonSyntaxNode@)">
            <summary>
            Gets the root node of the current syntax tree if it is available.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IDocument.GetSyntaxRoot(System.Threading.CancellationToken)">
            <summary>
            Gets the root node of the current syntax tree.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IDocument.GetSyntaxRootAsync(System.Threading.CancellationToken)">
            <summary>
            Gets the root node of the syntax tree asynchronously.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IDocument.TryGetSemanticModel(Roslyn.Compilers.Common.ISemanticModel@)">
            <summary>
            Gets the current semantic model for this document if the model is already computed.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IDocument.GetSemanticModel(System.Threading.CancellationToken)">
            <summary>
            Get the semantic model corresponding to this document. This method may do work to build the 
            compilation for the project.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IDocument.GetSemanticModelAsync(System.Threading.CancellationToken)">
            <summary>
            Gets the semantic model for this document asynchronously.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IDocument.GetTextVersion(System.Threading.CancellationToken)">
            <summary>
            Gets the version of the document's text.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IDocument.GetSyntaxVersion(System.Threading.CancellationToken)">
            <summary>
            Gets the version of the syntax tree. This is generally the newer of the text version and the project's version.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IDocument.IsTopLevelEquivalentTo(Roslyn.Services.IDocument,System.Threading.CancellationToken)">
            <summary>
            True if this document is syntactically equivalent to the specified document, ignoring trivia differences and method bodies.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IDocument.IsEquivalentTo(Roslyn.Services.IDocument,System.Threading.CancellationToken)">
            <summary>
            True if this document is syntactically equivalent to the specified document, ignoring trivia differences.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IDocument.IsHiddenPosition(System.Int32,System.Threading.CancellationToken)">
            <summary>
            Returns <c>true</c> if the provided position is in a hidden region inaccessible to the
            user.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IDocument.Id">
            <summary>
            The document's identifier. Many document instances may share the same ID, but only one
            document in a solution may have that ID.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IDocument.FilePath">
            <summary>
            The path to the document file or null if there is no document file.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IDocument.Project">
            <summary>
            The project this document belongs to.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IDocument.Folders">
            <summary>
            The sequence of logical folders the document is contained in.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IDocument.Name">
            <summary>
            The name of the document.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IDocument.SourceCodeKind">
            <summary>
            The kind of source code this document contains.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IDocument.LanguageServices">
            <summary>
            The language services provider you should use to get access to language specific services.
            </summary>
        </member>
        <member name="T:Roslyn.Services.SolutionServices">
            <summary>
            This class basically holds onto a set of services and gets reused across solution instances.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.PersistenceService">
            <summary>
            A service that enables storing and retrieving of information associated with solutions,
            projects or documents across runtime sessions.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.IPersistenceService">
            <summary>
            This service allows you to persist information relative to solution, projects and documents.
            </summary>
        </member>
        <member name="T:Roslyn.Services.IProject">
            <summary>
            Represents a snapshot of a project at any point in time.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IProject.TryGetCompilation(Roslyn.Compilers.Common.CommonCompilation@)">
            <summary>
            Get the compilation for this project if it is available.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IProject.GetCompilation(System.Threading.CancellationToken)">
            <summary>
            Get the compilation corresponding to this project. The first time this is called the
            compilation will be built.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IProject.GetCompilationAsync(System.Threading.CancellationToken)">
            <summary>
            Get the compilation for this project asynchronously.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IProject.ContainsDocument(Roslyn.Services.DocumentId)">
            <summary>
            True if the project contains a document with the specified ID.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IProject.GetDocument(Roslyn.Services.DocumentId)">
            <summary>
            Get the document in this project with the specified document Id.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IProject.GetDocument(Roslyn.Compilers.Common.CommonSyntaxTree)">
            <summary>
            Get the document in this project with the specified syntax tree.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IProject.IsPubliclyEquivalentTo(Roslyn.Services.IProject,System.Threading.CancellationToken)">
            <summary>
            True if the publicly exposed symbols of this project match the specified project.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IProject.IsEquivalentTo(Roslyn.Services.IProject,System.Threading.CancellationToken)">
            <summary>
            True if all aspects of this project match the specified project.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IProject.GetDifferences(Roslyn.Services.IProject)">
            <summary>
            Gets an object that lists the added, changed and removed documents differences between this project and the specified project.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IProject.GetVersion(System.Threading.CancellationToken)">
            <summary>
            The project version. This equates to the version of the project file.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IProject.GetLatestDocumentVersion(System.Threading.CancellationToken)">
            <summary>
            The version of the most recently modified document.
            </summary>
        </member>
        <member name="M:Roslyn.Services.IProject.GetDependentVersion(System.Threading.CancellationToken)">
            <summary>
            The latest version of the project, its documents and all dependent projects and documents.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IProject.Id">
            <summary>
            The ID of the project. Multiple IProject instances may share the same ID. However, only
            one project may have this ID in any given solution.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IProject.Name">
            <summary>
            The name of the project. This may be different than the assembly name.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IProject.AssemblyName">
            <summary>
            The name of the assembly this project represents.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IProject.FilePath">
            <summary>
            The path to the project file or null if there is no project file.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IProject.Solution">
            <summary>
            The solution this project belongs to.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IProject.LanguageServices">
            <summary>
            The language service provider associated with this project. You can use this provider to
            access language specific services.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IProject.CompilationOptions">
            <summary>
            The options used when building the compilation for this project.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IProject.ParseOptions">
            <summary>
            The options used when parsing documents for this project.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IProject.FileResolver">
            <summary>
            Assembly resolver used to resolve reference names and relative paths.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IProject.HasDocuments">
            <summary>
            True if the project has any documents.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IProject.DocumentIds">
            <summary>
            All the document IDs associated with this project.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IProject.Documents">
            <summary>
            All the documents associated with this project.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IProject.ProjectReferences">
            <summary>
            The list of all other projects within the same solution that this project references.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IProject.MetadataReferences">
            <summary>
            The list of all other metadata sources (assemblies) that this project references.
            </summary>
        </member>
        <member name="P:Roslyn.Services.IProject.IsSubmission">
            <summary>
            Returns true if this is a submission project.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.IProjectDependencyGraph.GetTopologicallySortedProjects(System.Threading.CancellationToken)">
            <summary>
            Returns all the projects for the solution in a topologically sorted order with respect
            to their dependencies. That is, projects that depend on other projects will always show
            up later than them in this stream.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.IProjectDependencyGraph.GetProjectsThatDirectlyDependOnThisProject(Roslyn.Services.ProjectId)">
            <summary>
            Gets the list of projects (topologically sorted) that directly depend on this project.
            </summary> 
        </member>
        <member name="M:Roslyn.Services.Host.IProjectDependencyGraph.GetProjectsThatThisProjectDirectlyDependsOn(Roslyn.Services.ProjectId)">
            <summary>
            Gets the list of projects (topologically sorted) that this project directly depends on.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.IProjectDependencyGraph.GetConnectedProjects(System.Threading.CancellationToken)">
            <summary>
            Returns each connected group of projects in the solution.  A group is independent of
            another group if no projects in the first group have any dependency relationship with
            any projects in the other group. 
            </summary>
        </member>
        <member name="M:Roslyn.Services.Host.ProjectDependencyGraph.WithNewSolution(Roslyn.Services.ISolution)">
            <summary>
            Called when a solution is updated but when all the projects and project references
            haven't changed. We just update to the latest solution snapshot here to not hold the old
            solution in memory unnecessarily. Since we know that none of the relevant information
            has actually changed, there's no need to recalculate the graph.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.ProjectDependencyServiceFactory.ProjectDependencyService.WorkspaceTracker">
            <summary>
            The workspace tracker tracks workspaces changes and resets the lazily created graph if
            project references change
            </summary>
        </member>
        <member name="T:Roslyn.Services.RecoverableTextSource">
            <summary>
            A text retainer that will save text to temporary storage when it is evicted from the
            text cache and reload from that storage if and when it is needed again.
            </summary>
        </member>
        <member name="T:Roslyn.Services.ISolution">
            <summary>
            Represents a set of projects, documents and compilations.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.ContainsProject(Roslyn.Services.ProjectId)">
            <summary>
            True if the solution contains a project with the specified project ID.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.GetProject(Roslyn.Services.ProjectId)">
            <summary>
            Gets the project in this solution with the specified project ID.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.GetProjectsByName(System.String)">
            <summary>
            Gets the project in this solution with the specified name.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.GetProjectsByAssemblyName(System.String)">
            <summary>
            Gets the project in this solution with the specified assembly name.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.AddProject(Roslyn.Services.ProjectId,System.String,System.String,System.String)">
            <summary>
            Creates a new solution instance that includes a project with the specified language and
            names.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.AddProject(Roslyn.Services.IProjectInfo)">
            <summary>
            Create a new solution instance that includes a project with the specified project
            information.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.AddProject(Roslyn.Services.IProject)">
            <summary>
            Create a new solution instance with a new project based on a project from a different
            solution instance.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.RemoveProject(Roslyn.Services.ProjectId)">
            <summary>
            Create a new solution instance without the project specified.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.UpdateAssemblyName(Roslyn.Services.ProjectId,System.String)">
            <summary>
            Creates a new solution instance with the project specified updated to have the new
            assembly name.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.UpdateCompilationOptions(Roslyn.Services.ProjectId,Roslyn.Compilers.Common.CommonCompilationOptions)">
            <summary>
            Create a new solution instance with the project specified updated to have
            the specified compilation options.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.UpdateParseOptions(Roslyn.Services.ProjectId,Roslyn.Compilers.Common.CommonParseOptions)">
            <summary>
            Create a new solution instance with the project specified updated to have
            the specified parse options.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.AddProjectReference(Roslyn.Services.ProjectId,Roslyn.Services.ProjectId)">
            <summary>
            Create a new solution instance with the project specified updated to include
            the specified project reference.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.AddProjectReferences(Roslyn.Services.ProjectId,System.Collections.Generic.IEnumerable{Roslyn.Services.ProjectId})">
            <summary>
            Create a new solution instance with the project specified updated to include
            the specified project references.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.RemoveProjectReference(Roslyn.Services.ProjectId,Roslyn.Services.ProjectId)">
            <summary>
            Create a new solution instance with the project specified updated to no longer
            include the specified project reference.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.RemoveAllProjectReferences(Roslyn.Services.ProjectId)">
            <summary>
            Create a new solution instance with the project specified updated to contain
            no project references.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.AddMetadataReference(Roslyn.Services.ProjectId,Roslyn.Compilers.MetadataReference)">
            <summary>
            Create a new solution instance with the project specified updated to include the 
            specified metadata reference.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.AddMetadataReferences(Roslyn.Services.ProjectId,System.Collections.Generic.IEnumerable{Roslyn.Compilers.MetadataReference})">
            <summary>
            Create a new solution instance with the project specified updated to include the
            specified metadata references.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.RemoveMetadataReference(Roslyn.Services.ProjectId,Roslyn.Compilers.MetadataReference)">
            <summary>
            Create a new solution instance with the project specified updated to no longer include
            the specified metadata reference.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.RemoveAllMetadataReferences(Roslyn.Services.ProjectId)">
            <summary>
            Create a new solution instance with the project specified updated to no longer include
            any metadata references.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.ContainsDocument(Roslyn.Services.DocumentId)">
            <summary>
            True if the solution contains the document in one of its projects
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.GetDocument(Roslyn.Services.DocumentId)">
            <summary>
            Gets the document in this solution with the specified document ID.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.GetDocument(Roslyn.Compilers.Common.CommonSyntaxTree)">
            <summary>
            Gets the document in this solution with the specified syntax tree.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.AddDocument(Roslyn.Services.IDocumentInfo)">
            <summary>
            Create a new solution instance with the corresponding project updated to include a new 
            document instanced defined by the document info.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.AddDocument(Roslyn.Services.DocumentId,System.String,Roslyn.Compilers.IText,System.Collections.Generic.IEnumerable{System.String})">
            <summary>
            Creates a new solution instance with the corresponding project updated to include a new
            document instance defined by its name and text.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.AddDocument(Roslyn.Services.DocumentId,System.String,Roslyn.Services.TextLoader,System.Collections.Generic.IEnumerable{System.String})">
            <summary>
            Creates a new solution instance with the project updated to include a new document with
            the arguments specified.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.AddDocument(Roslyn.Services.DocumentId,System.String,System.Collections.Generic.IEnumerable{System.String})">
            <summary>
            Creates a new solution instance with the project updated to include a new document that
            will load its text from the file path.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.AddDocument(Roslyn.Services.IDocument)">
            <summary>
            Creates a new solution instance updated to include a document equivalent to the one specified.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.RemoveDocument(Roslyn.Services.DocumentId)">
            <summary>
            Creates a new solution instance that no longer includes the specified document.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.RemoveAllDocuments(Roslyn.Services.ProjectId)">
            <summary>
            Creates a new solution instance with the project specified updated to no longer contain
            any documents.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.UpdateSourceCodeKind(Roslyn.Services.DocumentId,Roslyn.Compilers.SourceCodeKind)">
            <summary>
            Creates a new solution instance with the document specified updated to have the source
            code kind specified.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.UpdateFolders(Roslyn.Services.DocumentId,System.Collections.Generic.IEnumerable{System.String})">
            <summary>
            Creates a new solution instance with the document specified updated to be contained in
            the sequence of logical folders.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.UpdateDocument(Roslyn.Services.DocumentId,Roslyn.Compilers.IText,Roslyn.Services.PreservationMode)">
            <summary>
            Creates a new solution instance with the document specified updated to have the text
            specified.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.UpdateDocument(Roslyn.Services.DocumentId,Roslyn.Services.TextLoader)">
            <summary>
            Creates a new solution instance with the document specified updated to have the text
            supplied by the text loader.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.UpdateDocument(Roslyn.Services.DocumentId,Roslyn.Compilers.Common.CommonSyntaxNode)">
            <summary>
            Creates a new solution instance with the document specified updated to have a syntax tree
            rooted by the specified syntax node.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.UpdateDocument(Roslyn.Services.DocumentId,Roslyn.Compilers.SourceCodeKind)">
            <summary>
            Creates a new solution instance with the document specified updated to have the
            specified kind.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.UpdateDocument(Roslyn.Services.IDocument)">
            <summary>
            Creates a new solution instance with the document specified updated to be equivalent to
            the document supplied.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.ReloadDocument(Roslyn.Services.DocumentId)">
            <summary>
            Creates a new solution instance with the document newly loaded.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.UpdateFileResolver(Roslyn.Services.ProjectId,Roslyn.Compilers.FileResolver)">
            <summary>
            Creates a new solution where the specified project uses the given <see cref="T:Roslyn.Compilers.FileResolver"/>
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.GetReferencedProjectMetadata(Roslyn.Services.ProjectId,Roslyn.Services.ProjectId,System.Threading.CancellationToken)">
            <summary>
            Gets the metadata reference of the to-project as seen by the from-project. The first
            time this is called for any given project pair the metadata reference will be built.
            This may be expensive if the two projects are of different languages. This method will
            return the same metadata reference instance each time it is called for the same project
            pair.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.Clone">
            <summary>
            Creates a cheap clone of this solution that caches results separately from the original.
            </summary>
            <remarks>
            Use solution clones when doing operations that are likely to access a lot of text,
            syntax trees or compilations. When the clone is reclaimed so will the computed results.
            </remarks>
        </member>
        <member name="M:Roslyn.Services.ISolution.GetDifferences(Roslyn.Services.ISolution)">
            <summary>
            Gets an objects that lists the added, changed and removed project differences between
            this solution and the specified solution.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.GetVersion(System.Threading.CancellationToken)">
            <summary>
            The solution version. This equates to the solution file's version.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.GetLatestProjectVersion(System.Threading.CancellationToken)">
            <summary>
            The version of the most recently modified project.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ISolution.WithNewId">
            <summary>
            Create a copy of the solution with a unique SolutionId, to allow this solution to be
            hosted in a different workspace.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ISolution.Id">
            <summary>
            The Id of the solution. Multiple solution instances may share the same Id.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ISolution.FilePath">
            <summary>
            The path to the solution file or null if there is no solution file.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ISolution.HasProjects">
            <summary>
            True if the solution contains any projects.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ISolution.ProjectIds">
            <summary>
            A list of all the ids for all the projects contained by the solution.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ISolution.Projects">
            <summary>
            A list of all the projects contained by the solution.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ISolution.MetadataFileProvider">
            <summary>
            Provides files for metadata references of projects contained by the solution.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ISolution.LanguageServicesFactory">
            <summary>
            Gets the factory for creating language services.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Solution.Load(System.String,System.String,System.String)">
            <summary>
            Creates a new solution by loading the related projects as defined in the saved solution file.
            </summary>
            <param name="solutionFileName">The full path to the solution file.</param>
            <param name="configuration">The configuration, typically "Debug" or "Release".</param>
            <param name="platform">The platform, typically "x86" or "AnyCPU"</param>
        </member>
        <member name="M:Roslyn.Services.Solution.LoadStandAloneProject(System.String,System.String,System.String,System.String)">
            <summary>
            Creates a new solution with as single project by loading the project details from the specified project file.
            Project references are converted into metadata references of existing assemblies.
            </summary>
            <param name="projectFileName">The full path to the project file.</param>
            <param name="configuration">An optional configuration, typically "Debug" or "Release".</param>
            <param name="platform">An optional platform, typically "x86" or "AnyCPU"</param>
            <param name="language">An optional language. If null, the language is determined from the file extension.</param>
        </member>
        <member name="M:Roslyn.Services.Solution.LoadProjectFromCommandLineArguments(System.String,System.String,System.Collections.Generic.IEnumerable{System.String},System.String)">
            <summary>
            Creates a new solution with a single project by inferring that project from the arguments 
            normally used to invoke the compiler from the command prompt.
            </summary>
            <param name="projectName">The name of the project.</param>
            <param name="language">The programming language of the project's source files.</param>
            <param name="commandLineArguments">The command line arguments split into separate strings.</param>
            <param name="baseDirectory"></param>
            <returns></returns>
        </member>
        <member name="M:Roslyn.Services.Solution.LoadProjectFromCommandLineArguments(System.String,System.String,System.String,System.String)">
            <summary>
            Creates a new solution with a single project by inferring that project from the arguments 
            normally used to invoke the compiler from the command prompt.
            </summary>
            <param name="projectName">The name of the project.</param>
            <param name="language">The programming language of the project's source files.</param>
            <param name="commandLine">The command line arguments as a single string.</param>
            <param name="baseDirectory"></param>
            <returns></returns>
        </member>
        <member name="M:Roslyn.Services.Solution.ForkProject(Roslyn.Services.ProjectState,System.Func{Roslyn.Compilers.Common.CommonCompilation,System.Threading.CancellationToken,Roslyn.Compilers.Common.CommonCompilation},System.Boolean)">
            <summary>
            Creates a new snapshot with an updated project and an action that will produce a new
            compilation matching the new project out of an old compilation. All dependent projects
            are fixed-up if the change to the new project affects its public metadata, and old
            dependent compilations are forgotten.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Solution.Roslyn#Services#ISolutionInProgress#GetInProgressSolution">
            <summary>
            Get a subset of this workspace that has projects for which some form of compilation is already available.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Solution.GetCompilation(Roslyn.Services.ProjectId,System.Threading.CancellationToken)">
            <summary>
            Get or build the compilation for the specified project
            </summary>
        </member>
        <member name="M:Roslyn.Services.Solution.GetReferencedProjectMetadata(Roslyn.Services.ProjectId,Roslyn.Services.ProjectId,System.Threading.CancellationToken)">
            <summary>
            Get a metadata reference for the 'toProject' as seen from the 'fromProject'
            </summary>
        </member>
        <member name="M:Roslyn.Services.Solution.GetMetadataReference(Roslyn.Services.ProjectId,Roslyn.Services.ProjectState,System.Threading.CancellationToken)">
            <summary>
            Get a metadata reference for the project's compilation
            </summary>
        </member>
        <member name="M:Roslyn.Services.Solution.GetInProgressMetadataReference(Roslyn.Services.ProjectId,Roslyn.Services.ProjectState,System.Threading.CancellationToken)">
            <summary>
            Attempt to get the best readily available compilation for the project. It may be a
            partially built compilation.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.ISolutionFactoryService">
            <summary>
            A factory that creates empty solutions.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.TemporaryStorageServiceFactory.TemporaryStorageService">
            <summary>
            Temporarily stores text in-process. 
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.ITemporaryStorageService">
            <summary>
            This service allows you to access temporary storage.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Host.ITemporaryStorage">
            <summary>
            TemporaryStorage can be used to read and write text to a temporary storage location.
            </summary>
        </member>
        <member name="T:Roslyn.Services.ExportLanguageServiceAttribute">
            <summary>
            Specifies the exact type of the service exported by the ILanguageService.
            </summary>
        </member>
        <member name="T:Roslyn.Services.ProjectId">
            <summary>
            An identifier that can be used to refer to the same IProject across versions.
            </summary>
        </member>
        <member name="M:Roslyn.Services.ProjectId.CreateNewId(Roslyn.Services.SolutionId,System.String)">
            <summary>
            Create a new ProjectId instance.
            </summary>
            <param name="solutionId">The solution id that this id is relative to.</param>
            <param name="debugName">An optioanl name to make this id easier to recognize while debugging.</param>
        </member>
        <member name="P:Roslyn.Services.ProjectId.SolutionId">
            <summary>
            The SolutionId this project id is relative to.
            </summary>
        </member>
        <member name="P:Roslyn.Services.ProjectId.Id">
            <summary>
            The system generated unique id.
            </summary>
        </member>
        <member name="T:Roslyn.Services.SolutionId">
            <summary>
            An identifier that can be used to refer to the same ISolution across versions. 
            </summary>
        </member>
        <member name="M:Roslyn.Services.SolutionId.CreateNewId(System.String)">
            <summary>
            Create a new Solution Id
            </summary>
            <param name="debugName">An optional name to make this id easier to recognize while debugging.</param>
        </member>
        <member name="M:Roslyn.Services.SolutionId.Clone">
            <summary>
            Create a new Solution Id with the same debug name as the previous one.
            </summary>
        </member>
        <member name="P:Roslyn.Services.SolutionId.Id">
            <summary>
            The unique id of the solution.
            </summary>
        </member>
        <member name="T:Roslyn.Utilities.RetainedValueSource`1">
            <summary>
            This retainer computes a access a value on demand from an underlying value source, likely computing the value,
            and then holds onto it strongly.
            </summary>
        </member>
        <member name="T:Roslyn.Utilities.ConstantValueSource`1">
            <summary>
            This value source keeps a strong reference to a value.
            </summary>
        </member>
        <member name="M:Roslyn.Utilities.TaskExtensions.UnwrapWithDefault(System.Threading.Tasks.Task{System.Threading.Tasks.Task})">
            <summary>
            Creates a proxy <see cref="T:System.Threading.Tasks.Task">Task</see> that represents the 
            asynchronous operation of a Task{Task}.
            </summary>
            <remarks>
            It is often useful to be able to return a Task from a <see cref="T:System.Threading.Tasks.Task`1">
            Task{TResult}</see>, where the inner Task represents work done as part of the outer Task{TResult}.  However, 
            doing so results in a Task{Task}, which, if not dealt with carefully, could produce unexpected behavior.  Unwrap 
            solves this problem by creating a proxy Task that represents the entire asynchronous operation of such a Task{Task}.
            
            * this is a temporary workaround in .NET 4.0 due to a dead lock issue original Unwrap method has.
              we can remove this once we move to .NET 4.5 and use the official TPL Unwrap.
            </remarks>
            <param name="task">The Task{Task} to unwrap.</param>
            <exception cref="T:System.ArgumentNullException">The exception that is thrown if the 
            <paramref name="task"/> argument is null.</exception>
            <returns>A Task that represents the asynchronous operation of the provided Task{Task}.</returns>
        </member>
        <member name="M:Roslyn.Utilities.TaskExtensions.UnwrapWithDefault``1(System.Threading.Tasks.Task{System.Threading.Tasks.Task{``0}})">
            <summary>
            Creates a proxy <see cref="T:System.Threading.Tasks.Task`1">Task{TResult}</see> that represents the 
            asynchronous operation of a Task{Task{TResult}}.
            </summary>
            <remarks>
            It is often useful to be able to return a Task{TResult} from a Task{TResult}, where the inner Task{TResult} 
            represents work done as part of the outer Task{TResult}.  However, doing so results in a Task{Task{TResult}}, 
            which, if not dealt with carefully, could produce unexpected behavior.  Unwrap solves this problem by 
            creating a proxy Task{TResult} that represents the entire asynchronous operation of such a Task{Task{TResult}}.
            
            * this is a temporary workaround in .NET 4.0 due to a dead lock issue original Unwrap method has.
              we can remove this once we move to .NET 4.5 and use the official TPL Unwrap.
            </remarks>
            <param name="task">The Task{Task{TResult}} to unwrap.</param>
            <exception cref="T:System.ArgumentNullException">The exception that is thrown if the 
            <paramref name="task"/> argument is null.</exception>
            <returns>A Task{TResult} that represents the asynchronous operation of the provided Task{Task{TResult}}.</returns>        
        </member>
        <member name="M:Roslyn.Utilities.TaskExtensions.SafeWait(System.Threading.Tasks.Task,System.Threading.CancellationToken)">
            <summary>
            Wait for a task. This works around a bug in .NET 4.0 where an
            AggregateException may be thrown when a task was cancelled with the proper cancellation
            token.
            </summary>
            <param name="task"></param>
            <param name="cancellationToken"></param>
        </member>
        <member name="M:Roslyn.Utilities.TaskExtensions.SafeWaitAll(System.Threading.Tasks.Task[],System.Threading.CancellationToken)">
            <summary>
            Wait for a number of tasks. This works around a bug in .NET 4.0 where an
            AggregateException may be thrown when a task was cancelled with the proper cancellation
            token.
            </summary>
            <param name="tasks"></param>
            <param name="cancellationToken"></param>
        </member>
        <member name="M:Roslyn.Utilities.TaskExtensions.SafeRunSynchronously(System.Threading.Tasks.Task,System.Threading.CancellationToken)">
            <summary>
            run the given task synchronously at the spot. use this if you want to catch all operation cancelled exceptions 
            its children tasks are throwing in one place
            </summary>
            <param name="task"></param>
            <param name="cancellationToken"></param>
            <returns></returns>
        </member>
        <member name="M:Roslyn.Utilities.TaskExtensions.SafeRunSynchronously``1(System.Threading.Tasks.Task{``0},System.Threading.CancellationToken)">
            <summary>
            run the given task synchronously at the spot. use this if you want to catch all operation cancelled exceptions 
            its children tasks are throwing in one place
            </summary>
            <typeparam name="T"></typeparam>
            <param name="task"></param>
            <param name="cancellationToken"></param>
            <returns></returns>
        </member>
        <member name="M:Roslyn.Utilities.TaskExtensions.GenericImplementation`1.ProcessOuterTask(System.Threading.Tasks.TaskCompletionSource{`0},System.Threading.Tasks.Task)">
            <summary>Processes an outer task of task, transferring the appropriate results to the TCS.</summary>
            <param name="tcs">The TCS for the proxy task returned to the user.</param>
            <param name="task">The outer Task{Task} or Task{Task{TResult}} provided by the user.</param>
        </member>
        <member name="M:Roslyn.Utilities.TaskExtensions.GenericImplementation`1.ProcessCompletedOuterTask(System.Threading.Tasks.TaskCompletionSource{`0},System.Threading.Tasks.Task)">
            <summary>Processes the outer task once it's completed.</summary>
            <param name="tcs">The TCS for the proxy task returned to the user.</param>
            <param name="task">The outer Task{Task} or Task{Task{TResult}} provided by the user.</param>
        </member>
        <member name="M:Roslyn.Utilities.TaskExtensions.GenericImplementation`1.ProcessInnerTask(System.Threading.Tasks.TaskCompletionSource{`0},System.Threading.Tasks.Task)">
            <summary>
            Processes the inner task of a Task{Task} or Task{Task{TResult}}, 
            transferring the appropriate results to the TCS.
            </summary>
            <param name="tcs">The TCS for the proxy task returned to the user.</param>
            <param name="task">The inner task returned by the task provided by the user.</param>
        </member>
        <member name="M:Roslyn.Utilities.TaskExtensions.GenericImplementation`1.TrySetFromTask(System.Threading.Tasks.TaskCompletionSource{`0},System.Threading.Tasks.Task)">
            <summary>Transfer the completion status from "task" to "tcs".</summary>
            <param name="tcs">The target TCS to which the results of <paramref name="task"/> should be transfered.</param>
            <param name="task">The source task whose results should be transfered to <paramref name="tcs"/>.</param>
            <returns>true if the transfer was successful; otherwise, false.</returns>
        </member>
        <member name="T:Roslyn.Utilities.WeakConstantValueSource`1">
            <summary>
            A value source that keeps a weak reference to a value.
            </summary>
        </member>
        <member name="T:Roslyn.Services.Shared.Utilities.PatternMatcher">
            <summary>
            NOTE(cyrusn): The pattern matcher is threadsafe.  However, it maintains an internal cache of
            information as it is used.  Therefore, you should not keep it around forever and should get
            and release the matcher appropriately once you no longer need it.
            </summary>
        </member>
        <member name="M:Roslyn.Services.Shared.Utilities.PatternMatcher.MatchSingleWordPattern(System.String,System.String,System.Boolean)">
            <summary>
            Determines if a candidate string should matched given the user's pattern. 
            </summary>
            <param name="candidate">The string to test.</param>
            <param name="pattern">The pattern to match against, which may use things like
            Camel-Cased patterns.</param>
            <param name="punctuationStripped">Whether punctuation (space or asterisk) was stripped
            from the pattern.</param>
        </member>
        <member name="M:Roslyn.Services.Shared.Utilities.PatternMatcher.MatchPattern(System.String,System.String)">
            <summary>
            Determines if a given candidate string matches under a multiple word query text, as you
            would find in features like Navigate To. Do not call. Internal only for testing
            purposes.
            </summary>
            <param name="candidate">The word being tested.</param>
            <param name="pattern">The multiple-word query pattern.</param>
            <returns>If this was a match, a set of match types that occured while matching the
            patterns. If it was not a match, it returns null.</returns>
        </member>
    </members>
</doc>
